Qullamaggie [Modified] | FractalystWhat's the purpose of this strategy?
The strategy aims to identify high-probability breakout setups in trending markets, inspired by Kristjan "Qullamaggie" Kullamägi’s approach.
It focuses on capturing explosive price moves after periods of consolidation, using technical criteria like moving averages, breakouts, trailing stop-loss and momentum confirmation.
Ideal for swing traders seeking to ride strong trends while managing risk.
----
How does the strategy work?
The strategy follows a systematic process to capture high-momentum breakouts:
Pre-Breakout Criteria:
Prior Price Surge: Identifies stocks that have rallied 30-100%+ in recent month(s), signaling strong underlying momentum (per Qullamaggie’s volatility expansion principles).
Consolidation Phase: Looks for a tightening price range (e.g., flag, pennant, or tight base), indicating a potential "coiling" before continuation.
Trend Confirmation: Uses moving averages (e.g., 20/50/200 EMA) to ensure the stock is trading above key averages on the daily chart, confirming an uptrend.
Price Break: Enters when price clears the consolidation high with conviction.
Risk Management:
Initial Stop Loss: Placed below the consolidation low or a recent swing point to limit downside.
Break-Even Adjustment: Moves stop loss to breakeven once the trade reaches 1.5x risk-to-reward (RR), securing a "free trade" while letting winners run.
Trailing Stop (Unique Edge):
Market Structure Trailing: Instead of trailing via moving averages, the stop is dynamically adjusted using structural invalidation level. This adapts to price action, allowing the trade to stay open during volatile retracements while locking in gains as new structure forms.
Why This Matters: Most strategies use rigid trailing stops (e.g., below the 10EMA), which often exit prematurely in choppy markets. By trailing based on structure, this strategy avoids "noise" and captures larger trends, directly boosting overall returns.
----
What markets or timeframes is this suited for?
This is a long-only strategy designed for trending markets, and it performs best in:
Markets: Stocks (especially high-growth, liquid equities), cryptocurrencies (major pairs with strong volatility), commodities (e.g., oil, gold), and futures (index/commodity futures).
Timeframes: Primarily daily charts for swing trades (1-30 day holds), though weekly charts can help confirm broader trends.
Key Advantage: The TradingView script allows instant backtesting with adjustable parameters
You can:
- Test historical performance across multiple markets to identify which assets align best with the strategy.
- Optimize settings (e.g., trailing stop sensitivity, moving averages etc.) to match a market’s volatility profile.
Build a diversified portfolio by filtering for markets that show consistent profitability in backtests.
For example, you might discover cryptos require tighter trailing stops due to volatility, while stocks thrive with wider structural stops. The script automates this analysis, letting you to trade confidently.
----
What indicators or tools does the strategy use?
The strategy combines customizable technical tools with strict anti-lookahead safeguards:
Core Indicators:
Moving Averages: Adjustable periods (e.g., 20/50/200 EMA or SMA) and timeframes (daily/weekly) to confirm trend alignment. Users can test combinations (e.g., 10EMA vs. 20EMA) to optimize for specific markets.
Breakout Parameters:
Consolidation Length: Adjustable window to define the "tightness" of the pre-breakout pattern.
Entry Models: Flexible entry logics (Breakouts and fractals)
Anti-Lookahead Design:
All calculations (e.g., moving averages, consolidation ranges, volume averages) use only closed/confirmed data available at the time of the signal.
----
How do I manage risk with this strategy?
The strategy prioritizes customizable risk controls to align with your trading style and account size:
User-Defined Risk Inputs:
Risk Per Trade: Set a % of Equity (e.g., 1-2%) to determine position size. The strategy auto-calculates shares/contracts to match your selected risk per trade.
Flexibility: Choose between fixed risk or equity-based scaling.
The script adjusts position sizing dynamically based on your selection.
Pyramiding Feature:
Customizable Entries: Adjust the number of pyramiding trades allowed (e.g., 1-3 additional positions) in the strategy settings. Each new entry is triggered only if the prior trade hits its 1.5x RR target and the trend remains intact.
Risk-Scaled Additions: New positions use profits from prior trades, compounding gains without increasing initial risk.
Risk-Free Trade Mechanic:
Once a trade reaches 1.5x RR, the stop loss is moved to breakeven, eliminating downside risk.
The strategy then opens a new position (if pyramiding is enabled) using a portion of the locked-in profit. This "snowballs" winners while keeping total capital exposure stable.
Impact on Net Profit & Drawdown:
Net Profit Boost: Pyramiding lets you ride multi-leg trends aggressively. For example, a 100% runner could generate 2-3x more profit vs. a single-entry approach.
Controlled Drawdowns: Since new positions are funded by profits (not initial capital), max drawdown stays anchored to your original risk per trade (e.g., 1-2% of account). Even if later entries fail, the breakeven stop on prior trades protects overall equity.
Why This Works: Most strategies either over-leverage (increasing drawdowns) or exit too early. By recycling profits into new positions only after securing risk-free capital, this approach mimics hedge fund "scaling in" tactics while staying retail-trader friendly.
----
How does the strategy identify market structure for its trailing stoploss?
The strategy identifies market structure by utilizing an efficient logic with for loops to pinpoint the first swing candle that features a pivot of 2. This marks the beginning of the break of structure, where the market's previous trend or pattern is considered invalidated or changed.
----
What are the underlying calculations?
The underlying calculations involve:
Identifying Swing Points: The strategy looks for swing highs (marked with blue Xs) and swing lows (marked with red Xs). A swing high is identified when a candle's high is higher than the highs of the candles before and after it. Conversely, a swing low is when a candle's low is lower than the lows of the candles before and after it.
Break of Structure (BOS):
Bullish BOS: This occurs when the price breaks above the swing high level of the previous structure, indicating a potential shift to a bullish trend.
Bearish BOS: This happens when the price breaks below the swing low level of the previous structure, signaling a potential shift to a bearish trend.
Structural Liquidity and Invalidation:
Structural Liquidity: After a break of structure, liquidity levels are updated to the first swing high in a bullish BOS or the first swing low in a bearish BOS.
Structural Invalidation: If the price moves back to the level of the first swing low before the bullish BOS or the first swing high before the bearish BOS, it invalidates the break of structure, suggesting a potential reversal or continuation of the previous trend.
This method provides users with a technical approach to filter market regimes, offering an advantage by minimizing the risk of overfitting to historical data, which is often a concern with traditional indicators like moving averages.
By focusing on identifying pivotal swing points and the subsequent breaks of structure, the strategy maintains a balance between sensitivity to market changes and robustness against historical data anomalies, ensuring a more adaptable and potentially more reliable market analysis tool.
----
What entry criteria are used in this script?
The script uses two entry models for trading decisions: BreakOut and Fractal.
Underlying Calculations:
Breakout: The script records the most recent swing high by storing it in a variable. When the price closes above this recorded level, and all other predefined conditions are satisfied, the script triggers a breakout entry. This approach is considered conservative because it waits for the price to confirm a breakout above the previous high before entering a trade. As shown in the image, as soon as the price closes above the new candle (first tick), the long entry gets taken. The stop-loss is initially set and then moved to break-even once the price moves in favor of the trade.
Fractal: This method involves identifying a swing low with a period of 2, which means it looks for a low point where the price is lower than the two candles before and after it. Once this pattern is detected, the script executes the trade. This is an aggressive approach since it doesn't wait for further price confirmation. In the image, this is represented by the 'Fractal 2' label where the script identifies and acts on the swing low pattern.
----
What type of stop-loss identification method are used in this strategy?
This strategy employs two types of stop-loss methods: Initial Stop-loss and Trailing Stop-Loss.
Underlying Calculations:
Initial Stop-loss:
ATR Based: The strategy uses the Average True Range (ATR) to set an initial stop-loss, which helps in accounting for market volatility without predicting price direction.
Calculation:
- First, the True Range (TR) is calculated for each period, which is the greatest of:
- Current Period High - Current Period Low
- Absolute Value of Current Period High - Previous Period Close
- Absolute Value of Current Period Low - Previous Period Close
- The ATR is then the moving average of these TR values over a specified period, typically 14 periods by default. This ATR value can be used to set the stop-loss at a distance from the entry price that reflects the current market volatility.
Swing Low Based:
For this method, the stop-loss is set based on the most recent swing low identified in the market structure analysis. This approach uses the lowest point of the recent price action as a reference for setting the stop-loss.
Trailing Stop-Loss:
The strategy uses structural liquidity and structural invalidation levels across multiple timeframes to adjust the stop-loss once the trade is profitable. This method involves:
Detecting Structural Liquidity: After a break of structure, the liquidity levels are updated to the first swing high in a bullish scenario or the first swing low in a bearish scenario. These levels serve as potential areas where the price might find support or resistance, allowing the stop-loss to trail the price movement.
Detecting Structural Invalidation: If the price returns to the level of the first swing low before a bullish break of structure or the first swing high before a bearish break of structure, it suggests the trend might be reversing or invalidating, prompting the adjustment of the stop-loss to lock in profits or minimize losses.
By using these methods, the strategy dynamically adjusts the initial stop-loss based on market volatility, helping to protect against adverse price movements while allowing for enough room for trades to develop. The ATR-based stop-loss adapts to the current market conditions by considering the volatility, ensuring that the stop-loss is not too tight during volatile periods, which could lead to premature exits, nor too loose during calm markets, which might result in larger losses. Similarly, the swing low based stop-loss provides a logical exit point if the market structure changes unfavorably.
Each market behaves differently across various timeframes, and it is essential to test different parameters and optimizations to find out which trailing stop-loss method gives you the desired results and performance. This involves backtesting the strategy with different settings for the ATR period, the distance from the swing low, and how the trailing stop-loss reacts to structural liquidity and invalidation levels.
Through this process, you can tailor the strategy to perform optimally in different market environments, ensuring that the stop-loss mechanism supports the trade's longevity while safeguarding against significant drawdowns.
----
What type of break-even method is used in this strategy? What are the underlying calculations?
Moves the initial stop-loss to the entry price when the price reaches a certain RR ratio.
Calculation:
Break-even level = Entry Price + (Initial Risk * RR Ratio)
----
What tables are available in this script?
- Summary: Provides a general overview, displaying key performance parameters such as Net Profit, Profit Factor, Max Drawdown, Average Trade, Closed Trades and more.
Total Commission: Displays the cumulative commissions incurred from all trades executed within the selected backtesting window. This value is derived by summing the commission fees for each trade on your chart.
Average Commission: Represents the average commission per trade, calculated by dividing the Total Commission by the total number of closed trades. This metric is crucial for assessing the impact of trading costs on overall profitability.
Avg Trade: The sum of money gained or lost by the average trade generated by a strategy. Calculated by dividing the Net Profit by the overall number of closed trades. An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.
MaxDD: Displays the largest drawdown of losses, i.e., the maximum possible loss that the strategy could have incurred among all of the trades it has made. This value is calculated separately for every bar that the strategy spends with an open position.
Profit Factor: The amount of money a trading strategy made for every unit of money it lost (in the selected currency). This value is calculated by dividing gross profits by gross losses.
Avg RR: This is calculated by dividing the average winning trade by the average losing trade. This field is not a very meaningful value by itself because it does not take into account the ratio of the number of winning vs losing trades, and strategies can have different approaches to profitability. A strategy may trade at every possibility in order to capture many small profits, yet have an average losing trade greater than the average winning trade. The higher this value is, the better, but it should be considered together with the percentage of winning trades and the net profit.
Winrate: The percentage of winning trades generated by a strategy. Calculated by dividing the number of winning trades by the total number of closed trades generated by a strategy. Percent profitable is not a very reliable measure by itself. A strategy could have many small winning trades, making the percent profitable high with a small average winning trade, or a few big winning trades accounting for a low percent profitable and a big average winning trade. Most mean-reversion successful strategies have a percent profitability of 40-80% but are profitable due to risk management control.
BE Trades: Number of break-even trades, excluding commission/slippage.
Losing Trades: The total number of losing trades generated by the strategy.
Winning Trades: The total number of winning trades generated by the strategy.
Total Trades: Total number of taken traders visible your charts.
Net Profit: The overall profit or loss (in the selected currency) achieved by the trading strategy in the test period. The value is the sum of all values from the Profit column (on the List of Trades tab), taking into account the sign.
- Monthly: Displays performance data on a month-by-month basis, allowing users to analyze performance trends over each month and year.
- Weekly: Displays performance data on a week-by-week basis, helping users to understand weekly performance variations.
- UI Table: A user-friendly table that allows users to view and save the selected strategy parameters from user inputs. This table enables easy access to key settings and configurations, providing a straightforward solution for saving strategy parameters by simply taking a screenshot with Alt + S or ⌥ + S.
User-input styles and customizations:
Please note that all background colors in the style are disabled by default to enhance visualization.
How to Use This Strategy to Create a Profitable Edge and Systems?
Choose Your Strategy mode:
- Decide whether you are creating an investing strategy or a trading strategy.
Select a Market:
- Choose a one-sided market such as stocks, indices, or cryptocurrencies.
Historical Data:
- Ensure the historical data covers at least 10 years of price action for robust backtesting.
Timeframe Selection:
- Choose the timeframe you are comfortable trading with. It is strongly recommended to use a timeframe above 15 minutes to minimize the impact of commissions/slippage on your profits.
Set Commission and Slippage:
- Properly set the commission and slippage in the strategy properties according to your broker/prop firm specifications.
Parameter Optimization:
- Use trial and error to test different parameters until you find the performance results you are looking for in the summary table or, preferably, through deep backtesting using the strategy tester.
Trade Count:
- Ensure the number of trades is 200 or more; the higher, the better for statistical significance.
Positive Average Trade:
- Make sure the average trade is above zero.
(An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.)
Performance Metrics:
- Look for a high profit factor, and net profit with minimum drawdown.
- Ideally, aim for a drawdown under 20-30%, depending on your risk tolerance.
Refinement and Optimization:
- Try out different markets and timeframes.
- Continue working on refining your edge using the available filters and components to further optimize your strategy.
What Makes This Strategy Unique?
This strategy combines flexibility, smart risk management, and momentum focus in a way that’s rare and practical:
1. Adapts to Any Market Rhythm
Works on daily, weekly, or intraday charts without code changes.
Uses two entry types: classic breakouts (like trending stocks) or fractal patterns (to avoid false starts).
2. Smarter Stop-Loss System
No rigid rules: Stops adjust based on price structure (e.g., new “higher lows”), not fixed percentages.
Avoids whipsaws: Tightens stops only when the trend strengthens, not in choppy markets.
3. Safe Profit-Boosting Pyramiding
Adds new positions only after prior trades are risk-free (stops moved above breakeven).
Scales up using locked-in profits, not new capital, to grow gains safely.
4. Built-In Momentum Check
Tracks 1/3/6-month price growth to spotlight stocks with strong, lasting momentum.
Terms and Conditions | Disclaimer
Our charting tools are provided for informational and educational purposes only and should not be construed as financial, investment, or trading advice. They are not intended to forecast market movements or offer specific recommendations. Users should understand that past performance does not guarantee future results and should not base financial decisions solely on historical data.
Built-in components, features, and functionalities of our charting tools are the intellectual property of @Fractalyst Unauthorized use, reproduction, or distribution of these proprietary elements is prohibited.
- By continuing to use our charting tools, the user acknowledges and accepts the Terms and Conditions outlined in this legal disclaimer and agrees to respect our intellectual property rights and comply with all applicable laws and regulations.
Cerca negli script per "stop loss"
Dollar Cost Averaging (DCA) | FractalystWhat's the purpose of this strategy?
The purpose of dollar cost averaging (DCA) is to grow investments over time using a disciplined, methodical approach used by many top institutions like MicroStrategy and other institutions.
Here's how it functions:
Dollar Cost Averaging (DCA): This technique involves investing a set amount of money regularly, regardless of market conditions. It helps to mitigate the risk of investing a large sum at a peak price by spreading out your investment, thus potentially lowering your average cost per share over time.
Regular Contributions: By adding money to your investments on a pre-determined frequency and dollar amount defined by the user, you take advantage of compounding. The script will remind you to contribute based on your chosen schedule, which can be weekly, bi-weekly, monthly, quarterly, or yearly. This systematic approach ensures that your returns can earn their own returns, much like interest on savings but potentially at a higher rate.
Technical Analysis: The strategy employs a market trend ratio to gauge market sentiment. It calculates the ratio of bullish vs bearish breakouts across various timeframes, assigning this ratio a percentage-based score to determine the directional bias. Once this score exceeds a user-selected percentage, the strategy looks to take buy entries, signaling a favorable time for investment based on current market trends.
Fundamental Analysis: This aspect looks at the health of the economy and companies within it to determine bullish market conditions. Specifically, we consider:
Specifically, it considers:
Interest Rate: High interest rates can affect borrowing costs, potentially slowing down economic growth or making stocks less attractive compared to fixed income.
Inflation Rate: Inflation erodes purchasing power, but moderate inflation can be a sign of a healthy economy. We look for investments that might benefit from or withstand inflation.
GDP Rate: GDP growth indicates the overall health of the economy; we aim to invest in sectors poised to grow with the economy.
Unemployment Rate: Lower unemployment typically signals consumer confidence and spending power, which can boost certain sectors.
By integrating these elements, the strategy aims to:
Reduce Investment Volatility: By spreading out your investments, you're less impacted by short-term market swings.
Enhance Growth Potential: Using both technical and fundamental filters helps in choosing investments that are more likely to appreciate over time.
Manage Risk: The strategy aims to balance the risk of market timing by investing consistently and choosing assets wisely based on both economic data and market conditions.
----
What are Regular Contributions in this strategy?
Regular Contributions involve adding money to your investments on a pre-determined frequency and dollar amount defined by the user. The script will remind you to contribute based on your chosen schedule, which can be weekly, bi-weekly, monthly, quarterly, or yearly. This systematic approach ensures that your returns can earn their own returns, much like interest on savings but potentially at a higher rate.
----
How do regular contributions enhance compounding and reduce timing risk?
Enhances Compounding: Regular contributions leverage the power of compounding, where returns on investments can generate their own returns, potentially leading to exponential growth over time.
Reduces Timing Risk: By investing regularly, the strategy minimizes the risk associated with trying to time the market, spreading out the investment cost over time and potentially reducing the impact of volatility.
Automated Reminders: The script reminds users to make contributions based on their chosen schedule, ensuring consistency and discipline in investment practices, which is crucial for long-term success.
----
How does the strategy integrate technical and fundamental analysis for investors?
A: The strategy combines technical and fundamental analysis in the following manner:
Technical Analysis: It uses a market trend ratio to determine the directional bias by calculating the ratio of bullish vs bearish breakouts. Once this ratio exceeds a user-selected percentage threshold, the strategy signals to take buy entries, optimizing the timing within the given timeframe(s).
Fundamental Analysis: This aspect assesses the broader economic environment to identify sectors or assets that are likely to benefit from current economic conditions. By understanding these fundamentals, the strategy ensures investments are made in assets with strong growth potential.
This integration allows the strategy to select investments that are both technically favorable for entry and fundamentally sound, providing a comprehensive approach to investment decisions in the crypto, stock, and commodities markets.
----
How does the strategy identify market structure? What are the underlying calculations?
Q: How does the strategy identify market structure?
A: The strategy identifies market structure by utilizing an efficient logic with for loops to pinpoint the first swing candle that features a pivot of 2. This marks the beginning of the break of structure, where the market's previous trend or pattern is considered invalidated or changed.
What are the underlying calculations for identifying market structure?
A: The underlying calculations involve:
Identifying Swing Points: The strategy looks for swing highs (marked with blue Xs) and swing lows (marked with red Xs). A swing high is identified when a candle's high is higher than the highs of the candles before and after it. Conversely, a swing low is when a candle's low is lower than the lows of the candles before and after it.
Break of Structure (BOS):
Bullish BOS: This occurs when the price breaks above the swing high level of the previous structure, indicating a potential shift to a bullish trend.
Bearish BOS: This happens when the price breaks below the swing low level of the previous structure, signaling a potential shift to a bearish trend.
Structural Liquidity and Invalidation:
Structural Liquidity: After a break of structure, liquidity levels are updated to the first swing high in a bullish BOS or the first swing low in a bearish BOS.
Structural Invalidation: If the price moves back to the level of the first swing low before the bullish BOS or the first swing high before the bearish BOS, it invalidates the break of structure, suggesting a potential reversal or continuation of the previous trend.
This method provides users with a technical approach to filter market regimes, offering an advantage by minimizing the risk of overfitting to historical data, which is often a concern with traditional indicators like moving averages.
By focusing on identifying pivotal swing points and the subsequent breaks of structure, the strategy maintains a balance between sensitivity to market changes and robustness against historical data anomalies, ensuring a more adaptable and potentially more reliable market analysis tool.
What entry criteria are used in this script?
The script uses two entry models for trading decisions: BreakOut and Fractal.
Underlying Calculations:
Breakout: The script records the most recent swing high by storing it in a variable. When the price closes above this recorded level, and all other predefined conditions are satisfied, the script triggers a breakout entry. This approach is considered conservative because it waits for the price to confirm a breakout above the previous high before entering a trade. As shown in the image, as soon as the price closes above the new candle (first tick), the long entry gets taken. The stop-loss is initially set and then moved to break-even once the price moves in favor of the trade.
Fractal: This method involves identifying a swing low with a period of 2, which means it looks for a low point where the price is lower than the two candles before and after it. Once this pattern is detected, the script executes the trade. This is an aggressive approach since it doesn't wait for further price confirmation. In the image, this is represented by the 'Fractal 2' label where the script identifies and acts on the swing low pattern.
----
How does the script calculate trend score? What are the underlying calculations?
Market Trend Ratio: The script calculates the ratio of bullish to bearish breakouts. This involves:
Counting Bullish Breakouts: A bullish breakout is counted when the price breaks above a recent swing high (as identified in the strategy's market structure analysis).
Counting Bearish Breakouts: A bearish breakout is counted when the price breaks below a recent swing low.
Percentage-Based Score: This ratio is then converted into a percentage-based score:
For example, if there are 10 bullish breakouts and 5 bearish breakouts in a given timeframe, the ratio would be 10:5 or 2:1. This could be translated into a score where 66.67% (10/(10+5) * 100) represents the bullish trend strength.
The score might be calculated as (Number of Bullish Breakouts / Total Breakouts) * 100.
User-Defined Threshold: The strategy uses this score to determine when to take buy entries. If the trend score exceeds a user-defined percentage threshold, it indicates a strong enough bullish trend to justify a buy entry. For instance, if the user sets the threshold at 60%, the script would look for a buy entry when the trend score is above this level.
Timeframe Consideration: The calculations are performed across the timeframes specified by the user, ensuring the trend score reflects the market's behavior over different periods, which could be daily, weekly, or any other relevant timeframe.
This method provides a quantitative measure of market trend strength, helping to make informed decisions based on the balance between bullish and bearish market movements.
What type of stop-loss identification method are used in this strategy?
This strategy employs two types of stop-loss methods: Initial Stop-loss and Trailing Stop-Loss.
Underlying Calculations:
Initial Stop-loss:
ATR Based: The strategy uses the Average True Range (ATR) to set an initial stop-loss, which helps in accounting for market volatility without predicting price direction.
Calculation:
- First, the True Range (TR) is calculated for each period, which is the greatest of:
- Current Period High - Current Period Low
- Absolute Value of Current Period High - Previous Period Close
- Absolute Value of Current Period Low - Previous Period Close
- The ATR is then the moving average of these TR values over a specified period, typically 14 periods by default. This ATR value can be used to set the stop-loss at a distance from the entry price that reflects the current market volatility.
Swing Low Based:
For this method, the stop-loss is set based on the most recent swing low identified in the market structure analysis. This approach uses the lowest point of the recent price action as a reference for setting the stop-loss.
Trailing Stop-Loss:
The strategy uses structural liquidity and structural invalidation levels across multiple timeframes to adjust the stop-loss once the trade is profitable. This method involves:
Detecting Structural Liquidity: After a break of structure, the liquidity levels are updated to the first swing high in a bullish scenario or the first swing low in a bearish scenario. These levels serve as potential areas where the price might find support or resistance, allowing the stop-loss to trail the price movement.
Detecting Structural Invalidation: If the price returns to the level of the first swing low before a bullish break of structure or the first swing high before a bearish break of structure, it suggests the trend might be reversing or invalidating, prompting the adjustment of the stop-loss to lock in profits or minimize losses.
By using these methods, the strategy dynamically adjusts the initial stop-loss based on market volatility, helping to protect against adverse price movements while allowing for enough room for trades to develop. The ATR-based stop-loss adapts to the current market conditions by considering the volatility, ensuring that the stop-loss is not too tight during volatile periods, which could lead to premature exits, nor too loose during calm markets, which might result in larger losses. Similarly, the swing low based stop-loss provides a logical exit point if the market structure changes unfavorably.
Each market behaves differently across various timeframes, and it is essential to test different parameters and optimizations to find out which trailing stop-loss method gives you the desired results and performance. This involves backtesting the strategy with different settings for the ATR period, the distance from the swing low, and how the trailing stop-loss reacts to structural liquidity and invalidation levels.
Through this process, you can tailor the strategy to perform optimally in different market environments, ensuring that the stop-loss mechanism supports the trade's longevity while safeguarding against significant drawdowns.
What type of break-even and take profit identification methods are used in this strategy? What are the underlying calculations?
For Break-Even:
Percentage (%) Based:
Moves the initial stop-loss to the entry price when the price reaches a certain percentage above the entry.
Calculation:
Break-even level = Entry Price * (1 + Percentage / 100)
Example:
If the entry price is $100 and the break-even percentage is 5%, the break-even level is $100 * 1.05 = $105.
Risk-to-Reward (RR) Based:
Moves the initial stop-loss to the entry price when the price reaches a certain RR ratio.
Calculation:
Break-even level = Entry Price + (Initial Risk * RR Ratio)
For TP
- You can choose to set a take profit level at which your position gets fully closed.
- Similar to break-even, you can select either a percentage (%) or risk-to-reward (RR) based take profit level, allowing you to set your TP1 level as a percentage amount above the entry price or based on RR.
What's the day filter Filter, what does it do?
The day filter allows users to customize the session time and choose the specific days they want to include in the strategy session. This helps traders tailor their strategies to particular trading sessions or days of the week when they believe the market conditions are more favorable for their trading style.
Customize Session Time:
Users can define the start and end times for the trading session.
This allows the strategy to only consider trades within the specified time window, focusing on periods of higher market activity or preferred trading hours.
Select Days:
Users can select which days of the week to include in the strategy.
This feature is useful for excluding days with historically lower volatility or unfavorable trading conditions (e.g., Mondays or Fridays).
Benefits:
Focus on Optimal Trading Periods:
By customizing session times and days, traders can focus on periods when the market is more likely to present profitable opportunities.
Avoid Unfavorable Conditions:
Excluding specific days or times can help avoid trading during periods of low liquidity or high unpredictability, such as major news events or holidays.
What tables are available in this script?
- Summary: Provides a general overview, displaying key performance parameters such as Net Profit, Profit Factor, Max Drawdown, Average Trade, Closed Trades and more.
Total Commission: Displays the cumulative commissions incurred from all trades executed within the selected backtesting window. This value is derived by summing the commission fees for each trade on your chart.
Average Commission: Represents the average commission per trade, calculated by dividing the Total Commission by the total number of closed trades. This metric is crucial for assessing the impact of trading costs on overall profitability.
Avg Trade: The sum of money gained or lost by the average trade generated by a strategy. Calculated by dividing the Net Profit by the overall number of closed trades. An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.
MaxDD: Displays the largest drawdown of losses, i.e., the maximum possible loss that the strategy could have incurred among all of the trades it has made. This value is calculated separately for every bar that the strategy spends with an open position.
Profit Factor: The amount of money a trading strategy made for every unit of money it lost (in the selected currency). This value is calculated by dividing gross profits by gross losses.
Avg RR: This is calculated by dividing the average winning trade by the average losing trade. This field is not a very meaningful value by itself because it does not take into account the ratio of the number of winning vs losing trades, and strategies can have different approaches to profitability. A strategy may trade at every possibility in order to capture many small profits, yet have an average losing trade greater than the average winning trade. The higher this value is, the better, but it should be considered together with the percentage of winning trades and the net profit.
Winrate: The percentage of winning trades generated by a strategy. Calculated by dividing the number of winning trades by the total number of closed trades generated by a strategy. Percent profitable is not a very reliable measure by itself. A strategy could have many small winning trades, making the percent profitable high with a small average winning trade, or a few big winning trades accounting for a low percent profitable and a big average winning trade. Most mean-reversion successful strategies have a percent profitability of 40-80% but are profitable due to risk management control.
BE Trades: Number of break-even trades, excluding commission/slippage.
Losing Trades: The total number of losing trades generated by the strategy.
Winning Trades: The total number of winning trades generated by the strategy.
Total Trades: Total number of taken traders visible your charts.
Net Profit: The overall profit or loss (in the selected currency) achieved by the trading strategy in the test period. The value is the sum of all values from the Profit column (on the List of Trades tab), taking into account the sign.
- Monthly: Displays performance data on a month-by-month basis, allowing users to analyze performance trends over each month and year.
- Weekly: Displays performance data on a week-by-week basis, helping users to understand weekly performance variations.
- UI Table: A user-friendly table that allows users to view and save the selected strategy parameters from user inputs. This table enables easy access to key settings and configurations, providing a straightforward solution for saving strategy parameters by simply taking a screenshot with Alt + S or ⌥ + S.
User-input styles and customizations:
Please note that all background colors in the style are disabled by default to enhance visualization.
How to Use This Strategy to Create a Profitable Edge and Systems?
Choose Your Strategy mode:
- Decide whether you are creating an investing strategy or a trading strategy.
Select a Market:
- Choose a one-sided market such as stocks, indices, or cryptocurrencies.
Historical Data:
- Ensure the historical data covers at least 10 years of price action for robust backtesting.
Timeframe Selection:
- Choose the timeframe you are comfortable trading with. It is strongly recommended to use a timeframe above 15 minutes to minimize the impact of commissions/slippage on your profits.
Set Commission and Slippage:
- Properly set the commission and slippage in the strategy properties according to your broker/prop firm specifications.
Parameter Optimization:
- Use trial and error to test different parameters until you find the performance results you are looking for in the summary table or, preferably, through deep backtesting using the strategy tester.
Trade Count:
- Ensure the number of trades is 200 or more; the higher, the better for statistical significance.
Positive Average Trade:
- Make sure the average trade is above zero.
(An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.)
Performance Metrics:
- Look for a high profit factor, and net profit with minimum drawdown.
- Ideally, aim for a drawdown under 20-30%, depending on your risk tolerance.
Refinement and Optimization:
- Try out different markets and timeframes.
- Continue working on refining your edge using the available filters and components to further optimize your strategy.
What makes this strategy original?
Incorporation of Fundamental Analysis:
This strategy integrates fundamental analysis by considering key economic indicators such as interest rates, inflation, GDP growth, and unemployment rates. These fundamentals help in assessing the broader economic health, which in turn influences sector performance and market trends. By understanding these economic conditions, the strategy can identify sectors or assets that are likely to thrive, ensuring investments are made in environments conducive to growth. This approach allows for a more informed investment decision, aligning technical entries with fundamentally strong market conditions, thus potentially enhancing the strategy's effectiveness over time.
Technical Analysis Without Classical Methods:
The strategy's technical analysis diverges from traditional methods like moving averages by focusing on market structure through a trend score system.
Instead of using lagging indicators, it employs a real-time analysis of market trends by calculating the ratio of bullish to bearish breakouts. This provides several benefits:
Immediate Market Sentiment: The trend score system reacts more dynamically to current market conditions, offering insights into the market's immediate sentiment rather than historical trends, which can often lag behind real-time changes.
Reduced Overfitting: By not relying on moving averages or similar classical indicators, the strategy avoids the common pitfall of overfitting to historical data, which can lead to poor performance in new market conditions. The trend score provides a fresh perspective on market direction, potentially leading to more robust trading signals.
Clear Entry Signals: With the trend score, entry decisions are based on a clear percentage threshold, making the strategy's decision-making process straightforward and less subjective than interpreting moving average crossovers or similar signals.
Regular Contributions and Reminders:
The strategy encourages regular investments through a system of predefined frequency and amount, which could be weekly, bi-weekly, monthly, quarterly, or yearly. This systematic approach:
Enhances Compounding: Regular contributions leverage the power of compounding, where returns on investments can generate their own returns, potentially leading to exponential growth over time.
Reduces Timing Risk: By investing regularly, the strategy minimizes the risk associated with trying to time the market, spreading out the investment cost over time and potentially reducing the impact of volatility.
Automated Reminders: The script reminds users to make contributions based on their chosen schedule, ensuring consistency and discipline in investment practices, which is crucial for long-term success.
Long-Term Wealth Building:
Focused on long-term wealth accumulation, this strategy:
Promotes Patience and Discipline: By emphasizing regular contributions and a disciplined approach to both entry and risk management, it aligns with the principles of long-term investing, discouraging impulsive decisions based on short-term market fluctuations.
Diversification Across Asset Classes: Operating across crypto, stocks, and commodities, the strategy provides diversification, which is a key component of long-term wealth building, reducing risk through varied exposure.
Growth Over Time: The strategy's design to work with the market's natural growth cycles, supported by fundamental analysis, aims for sustainable growth rather than quick profits, aligning with the goals of investors looking to build wealth over decades.
This comprehensive approach, combining fundamental insights, innovative technical analysis, disciplined investment habits, and a focus on long-term growth, offers a unique and potentially effective pathway for investors seeking to build wealth steadily over time.
Terms and Conditions | Disclaimer
Our charting tools are provided for informational and educational purposes only and should not be construed as financial, investment, or trading advice. They are not intended to forecast market movements or offer specific recommendations. Users should understand that past performance does not guarantee future results and should not base financial decisions solely on historical data.
Built-in components, features, and functionalities of our charting tools are the intellectual property of @Fractalyst Unauthorized use, reproduction, or distribution of these proprietary elements is prohibited.
- By continuing to use our charting tools, the user acknowledges and accepts the Terms and Conditions outlined in this legal disclaimer and agrees to respect our intellectual property rights and comply with all applicable laws and regulations.
Easy Trade Pro [Buy and Sell Strategy + Backtesting System]Hello Traders,
Easy Trade Pro is a comprehensive tool that combines multiple technical indicators into a single customizable one. This tool is the culmination of an extensive trading career, it is designed to help traders navigate the markets in any timeframe and financial asset, like Equities, Futures, Crypto, Forex and Commodities.
Before we deep dive into the comprehensive guide on what Easy Trade Pro is, let's kick off by showcasing the strategy used in this example. Please note, we have adopted an extremely conservative approach strictly following the Tradingview House Rules, which you can review here: www.tradingview.com
The backtest strategy parameters:
Currency pair: EUR USD
Timeframe: 15-min chart
Market: Spot, no leverage
Broker: FXCM
Trading range: 2022-09-01 07:30 — 2023-06-26 20:00
Backtesting range: 2022-08-31 23:00 — 2023-06-26 20:00
Initial Capital: $10,000
Buy Order Size: 20% of the capital, $2,000
Stop Loss: 0.50%
Sell orders: Four different take profits where we unload the position by 25% each time
Broker Fees: Commission set at 0.08$
Slippage: 10 ticks
Understanding FXCM Commissions and Setting Realistic Slippage for EUR/USD Spot Trading:
◉I would like to provide some clarity on the commission structure and slippage setting used in the study for trading the EUR/USD pair on the FXCM spot market. Based on the information available, FXCM charges a commission of $4.00 per standard lot (100,000) on both sides of the trade (meaning at open and close) for the EUR/USD pair. Since the study involve an order size of $2,000 USD, which is equivalent to 0.02 lots, the commission fee for one side of the trade (either buying or selling) would be calculated as $4.00 multiplied by 0.02, which is $0.08. This means that for each individual trade, whether it be a buy or sell, the commission fee would be $0.08.
◉As for slippage, it is crucial to account for the inherent uncertainty in the execution price due to market fluctuations. In the forex market, the EUR/USD pair is quoted with a precision of five decimal places, with the smallest price change being a "pipette" (0.00001). Given that slippage can vary based on market conditions, it is considered fair practice to use a slippage of around 10 ticks under normal market conditions for the EUR/USD pair. This allows for a more realistic representation of the execution price, especially in a liquid and fast-moving market such as forex.
More detailed information about FXCM fees structure in the link below:
docs.fxcorporate.com
Enter a Trade conditions:
For our buy order, we utilize a custom buy signal called 'Bullish Reversal'. A detailed explanation of this and other buy orders can be found later in the guide, specifically in section 1).
To enhance realism in our trading strategy, we have implemented a confirmation mechanism. When utilizing the strategy tester, you have the option to input a value to determine the number of confirmation candles to consider.
For example, if you set the input to 1, the system will check if the next candle following the signal meets the criteria for confirmation. If set to 2, the system will evaluate the second candle, and so on for higher values. The confirmation is determined by comparing the closing or opening price of the selected buy signal candle with the corresponding closing price of the confirmation candle.
In this case we choose as buy signal: 'Bullish Reversal' + 2 candle of confirmation
Exit a trade conditions:
On the sell side, we exit a trade in four different types of sell orders where we take profits. Inside '', you will encounter unique labels attributed to our custom sell signals. A detailed explanation of these sell orders can be found later in the guide, specifically in section 1). We used custom order called:
1TP 'Good Sell'
2TP 'Good Sell'
3TP 'Good Sell'
4TP 'Bearish Reversal' + 4 confirmation candles
Our confirmation logic, for sell signals, is applied only to 'Bearish Reversal' signal. The confirmation is determined by comparing the closing or opening price of the selected 'Bearish Reversal' candle with the corresponding closing price of the confirmation candle. In this case, we wait for the fourth candle from the 'Bearish Reversal' signal to confirm the sell trade.
Protect your capital:
This super-conservative study involves a clear low risk, with the use of $2,000, 20% of our capital. If the stop loss of 0.5% were triggered, we lose 10$, equating to 0.10% of $10,000 - thus affecting only 0.10% of our capital.
Super Conservative Approach & Results:
With 353 closed trades, we achieved a net profit of 2.03%, or $203.34$ relative to our initial $10,000 capital, and a win rate of 73.37%.
Less Conservative Approach & Results:
We could also consider increasing our risk to 0.5% of our capital per trade. We would maintain our stop loss at 0.50%, but we would need to use all our capital to enter the market. If the stop loss of 0.5% will be triggered, we would lose 50$, equating to 0.5% of $10,000.
In this scenario, our net profit would have increased to 10.15%, equivalent to $1015.
Please be aware:
While fully automated strategies can bring considerable advantages, they are not without their cons. For one, relying solely on an automated system may not take into account the potential confluence of other strategies or indicators, such as the significance of support and resistance zones. These elements often require a more nuanced, human understanding of the markets and cannot always be perfectly replicated by an algorithm.
Additionally, it's essential to remember that a significant percentage of traders are not consistently profitable. As such, prudent risk management, a conservative approach, and acceptance of a reasonable profit are crucial aspects of successful trading. While the allure of high returns can be tempting, the sustainability of your trading strategy should always take precedence. Achieving steady, reliable profits over time often outweighs the appeal of a risky, high-return strategy that could potentially lead to substantial losses.
So, while automation can be a powerful tool in your trading arsenal, it's also important to consider other strategies and factors. Always ensure you're managing your risk effectively and approaching trading with a realistic and informed perspective.
------------------------------------------------------------------------ Why Easy Trade Pro is Original? ----------------------------------------------------------------------------------
We developed Easy Trade Pro as a unique and comprehensive solution, and we decided to protect our code to preserve its originality. We invested significant time and effort into making it a realistic trading strategy simulator. The standout features that set Easy Trade Pro apart include:
☀ Versatile Stop Loss Mechanisms: Stop loss execution can be complex and often requires careful coding to work as intended. In most freely available open-source codes, stop losses are implemented using the Average True Range (ATR). ATR can be beneficial but has limitations:
☁ Lagging Indicator - Like most technical indicators, the ATR is a lagging indicator. This means it is based on past data, and so it may not accurately reflect future market volatility. If market conditions change rapidly, the ATR may not adjust quickly enough, potentially leading to suboptimal stop loss levels.
☁ No Directional Information - The ATR measures volatility, but it does not provide any indication of the direction of the trend. Therefore, it should not be used as a standalone tool for making trading decisions, but should be used in conjunction with other technical analysis tools that can provide directional cues.
☁ Inefficiency in Trending Markets - In strongly trending markets, ATR-based stops can sometimes be too far from the current price level. This could lead to larger losses if the price moves against your trade before hitting the stop loss. On the flip side, in less volatile, sideways markets, an ATR-based stop might be set too close to the entry point, leading to premature stop outs.
☁ Overoptimization Risk - If you're backtesting a trading strategy, there's a risk of overoptimizing your stop loss settings by fine-tuning them to past data. The best ATR multiplier that worked in the past might not necessarily work in the future, leading to potential performance issues.
☀ We countered these by implementing four different types of 'protect the trade' mechanisms:
✔ Fixed Percentage Stop Loss
✔ Trailing Stop Loss
✔ Stop Loss Moved to Entry Upon Reaching Certain Gain
✔ Stop Loss Moved to Entry Upon Reaching First Take Profit Order ("Custom Order").
☀ Dual Exit Strategy: We incorporated two distinct methods of exiting a trade. The first uses our custom signals, while the second triggers exit at a certain percentage of gain.
☀ Multiple Take Profit Orders: You have the flexibility to establish up to four different sell orders. This feature enables you to fractionate your exit strategy according to your needs. You can choose to trigger these fractions based on our custom signals or determine your own exit points by setting targeted gains at a fixed percentage.
☀ Confirmation Candle System: This feature enhances trade precision by requiring confirmation candles after a buy or sell signal. This confirmation, dependent on the next candle's closing price, helps reduce false signals and improves entry and exit points. While our confirmation system is applicable to all custom buy signals, it's solely dedicated for the bearish reversal when it comes to sell signals.
☀ Universal Compatibility: Easy Trade Pro's Strategy Tester works perfectly with any asset class. The code can handle different contract types, including the SPX contracts and fractional assets like Bitcoin. It's optimized to ensure proper execution of trades without rounding issues.
☀ Bullish and Bearish Reversal candles: Our method of detecting these pivotal candles combines conditions from buy and sell signals with pertinent divergences in Price, RSI, and Volume (OBV). The distinguishing factor, however, lies in recognizing significant shifts in market structure and liquidity grabs. To further enhance the credibility of our indicator, we've incorporated Bollinger Bands, serving as an additional layer in spotting potential trend reversals, particularly when aligned with long-wick candlesticks, engulfing patterns, and morning or evening star formations.
☀ Non-Repainting Indicator: Our indicator signals are designed not to repaint. Once a signal appears, it stays fixed, offering a reliable tool for your trading decisions.
================================================== EXTENSIVE TECHNICAL DESCRIPTION ====================================================
Easy Trade Pro is versatile, allowing you to analyze market trends across any financial asset. With its rigorous testing, our tool can be used confidently on any timeframe, from 1D to 1min, whether you prefer longer-term or shorter-term trades.
Although we recommend trading on timeframes between 1D and 1min, higher timeframes like 1W chart, can also provide broader insights.
Our study combines a variety of popular technical indicators, such as RSI, Stochastic RSI, MACD, DMI, Bollinger Bands as well as relevant EMAs. On the volume side OBV and MFI. Using a data-driven approach, “Easy Trade Pro” analyzes historical market trends to identify optimal ways to combine these indicators with significant divergences between price and oscillators. On top of that the code considers relevant changes in market structure and liquidity grabs, to generate reliable and accurate signals for potential buy and sell opportunities.
* ☎ --> Please not that MACD, BBs, and EMAs account for a minimal part of our script <--- ☎, If you're looking for a simpler tool, consider checking out our open-source indicator, 'RSI, SRSI, MACD, and DMI cross - Open source code'. You can find it here:
With our customizable system, traders will be able to identify:
1) Three types of buy signals🐂,💰,💎 and sell signals 🐻,🔨,💀
2) Bullish and bearish reversal candles with support and resistance lines
3) Bull and bear momentum signals
4) A function that utilizes Color bars to identify the strength of the trend
5) Three customizable moving averages
6) Alerts direct to your email or phone
7) Advanced and customizable settings menu
8) Our software also includes a backtesting system that that allows users to test their trading strategies on historical data, to check how they would have performed in real-world market conditions. This can help refine a trading strategy and make more informed decisions.
------------------------------------------------------------------------------ 1) BUY AND SELL SIGNALS ---------------------------------------------------------------------------------
Our buy and sell signals are generated using a custom combination of RSI, MFI, and Stochastic RSI levels, as well as relevant MACD and Stochastic RSI crosses. These indicators are carefully analyzed to identify potential trading opportunities and determine optimal entry and exit points for trades.
RSI (Relative strength index) measures the strength of a security's price action, while the SRSI (Stochastic Relative Strength Index) is a momentum oscillator that measures the current price relative to its high and low range over a set period. The Money Flow Index (MFI) is another momentum indicator that uses both price and volume data to measure buying and selling pressure. MACD (Moving Average Convergence Divergence) is a popular technical indicator used in financial markets to analyze price trends and momentum.
▶ With our system, you'll be able to identify three different levels of buy signals:
◉ The first level of buy signal is represented by a 🐂 emoji and is a "Good Buy". This signal indicates a possible buying opportunity. It indicates that could be a good opportunity to enter in a long trade. It's important to note that, the "Good Buy" signal can sometimes be supplemented with a green "Bull" text and a flag plotshape positioned beneath the signal. In these scenarios, we categorize this as a "Good Buy Bull" signal.
◉ The second level of buy signal is represented by a 💰 emoji and is a "Great Buy". This signal indicates a stronger buying opportunity than the "Good Buy" signal.
◉ The third and strongest buy signal is represented by a 💎 emoji and is an "Incredible Buy". This signal indicates a stronger buying opportunity than the "Good Buy" and "Great Buy" signals
▶ With our system, you'll be able to identify three different levels of sell signals:
◉ On the sell side, the first level is represented by a 🐻 emoji and is a "Good Sell". This signal indicates a possible selling opportunity. It indicates that could be a good opportunity to exit a trade or open a short position. It's important to note that, the "Good Sell" signal can occasionally be accompanied by a red "Bear" text and a flag plotshape positioned beneath the signal. In such instances, we refer to this as a "Good Sell Bear" signal.
◉ The second sell signal is represented by a 🔨 emoji and is a "Great Sell". This signal indicates a stronger selling opportunity than the "Good Sell" signal.
◉ The third and strongest sell signal is represented by a 💀 emoji and is an "Incredible Sell". This signal indicates a stronger selling opportunity than the "Good Sell" and "Great Sell" signals.
------------------------------------------2) "BULLISH AND BEARISH REVERSAL CANDLES PLUS SUPPORT AND RESISTANCE LINES" ------------------------------------------------
Bullish and bearish reversal candles are specific candles that have more probability to reverse the trend.
Our trading indicator is designed to identify bullish and bearish reversal candles. Our method of detecting these pivotal candles combines conditions from buy and sell signals with pertinent divergences in Price, RSI, and Volume (OBV). The distinguishing factor, however, lies in recognizing significant shifts in market structure and liquidity grabs. To further enhance the credibility of our indicator, we've incorporated Bollinger Bands, serving as an additional layer in spotting potential trend reversals, particularly when aligned with long-wick candlesticks, engulfing patterns, and morning or evening star formations.
These candles are represented by blue and orange colors respectively by default. Additionally, the indicator also uses lines that are drawn at either the opening or closing of candles to help identify pivot points of support or resistance. These candles, lines color or shape are customizable in the settings menu.
How can I benefit the most from bullish reversal candles? To make the most of bullish reversal candles, a powerful strategy is:
E.g, 1D chart - Wait for the next 1 or 2 candles to close above the support line linked to the bullish reversal candle. For lower timeframes, it is recommended to wait for 2 or 3 candles before making a trading decision. A good tip is also to look for other signals (confluence), like a buy signal. Traders should decide based on their risk tolerance.
Here below we can see an example of a bullish reversal candle in the BTC/USDT, 1D, chart. The system identify a bullish reversal candle (blue color), the next 2 candles are green and closed above the support blue line, in addition we have other bullish signals (confluence).
How can I benefit the most from bullish reversal lines? Bullish reversal lines can help traders to identify key level of support and maintain control of their position until a clear break below occurs.
In the example below we se how the price retrace to the support line:
After touching the price bounce up.
How can I benefit the most from bearish reversal candles? To make the most of bearish reversal candles, a powerful strategy is:
E.g, 1D chart - Wait for the next 1 or 2 candles to close below the resistance line linked to the bearish reversal candle. For lower timeframes, it is recommended to wait for 2 or 3 candles before making a trading decision. Traders should decide based on their risk tolerance.
Here below we can see an example of a bearish reversal candle in the ETH/USDT, 1D, chart. The system identify a bearish reversal candle (orange color), the next candle is red and closes below the resistance orange line. A good tip is also to look for other signals (confluence), like a sell signal.
How can I benefit the most from bearish reversal lines? Bearish reversal lines can help traders to identify key level of resistance and maintain control of their position until a clear break above occurs.
In the example below we se how the price bounce back to the resistance line and get rejected.
------------------------------------------------------------------------- 3) BULL AND BEAR MOMENTUM SIGNALS -----------------------------------------------------------------------
We analyzed factors such as buy or sell signals, long or short confirmation signals, DMI crossup or crossdown and breaks of market structure (BOS) or change of character (CHoCh) to determine the strength and direction of the trend. These study give us bull trend or bear trend signals that can help traders identify potential trading opportunities and make informed decisions.
These conditions are represented by a green word "BULL" and a flag shape below (bull momentum) and by a red word "BEAR" and a flag shape above (bear momentum) respectively by default. These plots shapes are customizable in the settings menu.
How can I benefit the most from bull momentum signals? To make the most of bull momentum signals, a powerful strategy is:
E.g, 1D chart - Look for confluence. If bull signal comes with a "Good Buy 🐂" in the same candle the signal is more strong. Another good combo is to look for a bullish reversal candle prior or after this signal, usually within a range of 1/2 candles. For lower timeframes, it is recommended to wait 2/3 candles before making a trading decision.
In the picture below we can see an example of a bull momentum signal in the US500, 1D, chart.
How can I benefit the most from bear momentum signals? To make the most of bear momentum signals, a powerful strategy is:
E.g, 1D chart - Look for confluence. If bear signal comes with a "Good Sell 🐻" in the same candle the signal is more strong. Another good combo is to look for a bearish reversal candle prior or after this signal, usually within a range of 1/2 candles. For lower timeframes, it is recommended to wait 2/3 candles before making a trading decision.
In the picture below we can see an example of a bear momentum signal in combo with a sell signal, NETFLIX, 1D, chart.
-------------------------------------------------------------- 4) "COLOR BARS THAT INDICATE THE STRENGTH OF THE TREND -----------------------------------------------------
This code is responsible for changing the color of the bars on a chart based on certain conditions. The gradient colors are defined for green and red, and the algorithm checks if the current bar is within a certain range of either a bearish reversal or bullish reversal candle and whether the price is above or below certain exponential moving averages or if important break of market structure occurs.
Ultimately, this feature helps traders visually identify potential trends and market shifts and avoid getting distracted by price fluctuations. Please note that every gradient of color can be customize by the user. We set 3 different bullish colors and 3 different bearish colors.
Below the picture of the settings menu related to the bar color.
----------------------------------------------------------------------5)THREE CUSTOMIZABLE MOVING AVERAGES ----------------------------------------------------------------------
You can choose up to three moving averages, any length and any type like SMA, EMA, WMA, HMA, RMA, SWMA and VWMA. Furthermore, you have the freedom to adjust the color and width of the lines to your preference.
Below the picture of the settings menu related to the moving averages.
----------------------------------------------------------------------6) ALERTS DIRECT TO YOUR EMAIL OR PHONE --------------------------------------------------------------------
Our alert feature sends real-time notifications directly to your email or phone when a signal is generated, allowing you to take immediate action and stay ahead of the market.
With our system, you first establish your own rules for trading in the strategy tester - this includes your criteria for entering and exiting trades.
Once you've defined these conditions, our system will start sending you alerts. These alerts will be triggered whenever your specified conditions are met. So, if the market matches your 'enter trade' conditions, you'll receive an alert prompting. Similarly, when your 'exit trade' conditions are met, you'll receive another alert.
Remember, these alerts are purely based on the conditions you set.
Once the condition is met, you will receive alerts directly to your email or phone when enter and exit a trade based on your custom conditions. To make sure you receive these notifications click on notifications tab.
---------------------------------------------------------------7) ADVANCED AND CUSTOMIZABLE SETTINGS MENU----------------------------------------------------------------------
We designed Easy Trade indicators with traders in mind, so it's user-friendly, easy to navigate and users can customize inputs, style, and colors of every feature in the indicator's settings menu.
-----------------------------------------------------------------------8) EASY TRADE PRO - BACKTESTING SYSTEM----------------------------------------------------------------------
Easy Trade Pro features a highly effective and realistic backtesting system, designed to mirror as closely as possible the real-world scenarios of entering and exiting trades.
Step 1:
Open the settings menu of the Indicator.
Once opened the settings menu click on properties.
Decide on the capital you wish to invest. Choose whether to use contracts or USD and determine the size of your orders. For the sake of realism, we recommend not exceeding 25% of your capital per order. However, if you decide to utilize your entire capital, make sure to adjust your stop loss accordingly. For instance, if you have a capital of 10K and use 10K with a stop loss at 2%, your potential loss would be $200. Conversely, if you use only 2K of your 10K capital with a stop loss at 10%, you would still lose the same 2% of your capital. To make your simulation even more authentic, consider incorporating broker fees or commissions into your calculations. For example, spot market fees are typically around 0.10%. If you're backtesting markets with low liquidity, consider factoring in slippage as well.
Step 2:
Navigate to the 'Inputs' section and scroll down until you come across 'Backtesting System - Strategy Test'. Once you locate this, click on the box and activate the 'USE STRATEGY SYSTEM' option by checking the tick box.
Also You will then need to set a 'Start Date' and 'End Date', establishing a specific time period during which you wish to test your strategy.
Otherwise you can consider to use the deep backtesting feature.
Step 3:
It's now time to establish the conditions for entering a trade. You can choose from five different types of custom buy signals: Good Buy, Good Buy Bull, Great Buy, Incredible Buy, and Bullish Reversal. Note that 'Great Buy' and 'Incredible Buy' are rare signals, so we advise against using them frequently in mechanical strategy tests; instead, consider them more for manual live tests. For more consistent results, we recommend using the other buy signals.
After determining your preferred buy signal, you can choose how many confirmation candles you wish to wait for before entering a trade. A 'confirmation' means that if the next candle closes above the opening or closing price of the chosen buy signal, it's considered a confirmation. This could be the opening or closing price, depending on whether the candle is green (close > open) or red.
You can set the number of confirmation candles in different time frames: below 2h, between 2h and 10h, and above 10h.
Step 4:
It's now time to safeguard your trade by managing risk. You can choose to implement a stop loss, expressed in percentage terms, or opt for a trailing stop. A trailing stop is a type of stop loss order that moves with the market price. It is designed to protect gains by enabling a trade to remain open and continue to profit as long as the market price is moving in a favorable direction. However, the trade closes if the market price changes direction by a specified amount (the 'trailing stop distance').
Additionally, you can minimize losses and move the stop loss to your entry point once the price reaches a certain percentage of profit. This strategy can help secure potential gains while limiting the potential for losses.
Step 5:
Now it's time to set the conditions for exiting the trade. You have the option to divide your exit into a maximum of four parts, with each part representing 25% of the position size. For each take profit point, you can choose from three different custom sell signals: Good Sell, Good Sell Bear, and Bearish Reversal.
Similarly, the concept of confirmation candles also applies here, but in this case, the candles are not closing above. A 'confirmation' for a sell signal means that if the next candle closes below the opening or closing price of the selected sell signal, it's considered a confirmation. This could be the opening or closing price, depending on whether the candle is green (open > close) or red (close < open).
So, when you're looking to sell, a confirmation would occur if the next candlestick's closing price is lower than the opening or closing price of the candlestick that triggered the sell signal. This indicates a potential bearish trend, providing the confirmation to execute the sell order.
Additionally, we've introduced a feature that allows you to move your stop loss to the entry point whenever the first take profit (1TP) is reached, which equates to hitting one custom sell signal.
Step 6:
We've also designed an alternative method for taking profits. With this approach, you can choose to exit your position once a fixed percentage gain from the entry point is reached. For instance, you might decide to exit when a 10% profit is achieved. Similarly to the previous method, this approach allows you to choose up to four exit points and determine the proportion of your position you want to close at each stage.
Conclusion:
Easy Trade Pro provides users with various options for entering and exiting trades. To effectively utilize the indicator, we strongly recommend conducting thorough backtesting and considering the results across your preferred trading pairs. It is advisable to analyze a substantial number of trades, ideally exceeding 100 trades, to obtain reliable insights into the indicator's performance. This approach will help you gain a better understanding of how Easy Trade Pro aligns with your trading strategy and objectives.
❗Keep attention❗
It is important to note that no trading indicator or strategy is foolproof, and there is always a risk of losses in trading. While this indicator may provide useful information for making conclusions, it should not be used as the sole basis for making trading decisions. Traders should always use proper risk management techniques and consider multiple factors when making trading decisions.
It is also important to be aware of the limitations of simulated performance results. Hypothetical or simulated results do not represent actual trading, and since trades have not been executed, results may be over- or under-compensated for market factors such as lack of liquidity. Simulated trading programs are also designed with the benefit of hindsight, and no representation is being made that any account will achieve profits or losses similar to those shown. Therefore, our indicators are for informative purposes only and not intended to be used as financial advice.
We encourage traders to use our indicators as part of a well-rounded trading strategy and to always be aware of the risks involved in trading. Remember that past performance is not indicative of future results and always trade responsibly.
[3Commas] Alligator StrategyThe Alligator Strategy
🔷 What it does: This script implements the Alligator Strategy, a trend-following method created by Bill Williams. It uses three customizable moving averages (SMMAs or RMAs) "Jaws," "Teeth," and "Lips" to identify market trends and potential trade opportunities. Additionally, it includes built-in stop-loss and take-profit options for enhanced risk management.
🔷 Who is it for:
Trend Traders: Those who prefer trading in markets with clear directional movement.
Advanced Users: Traders who require customizable tools and dynamic risk management features.
Beginners: Accessible to those new to trading, thanks to its intuitive visual representation of trends and pre-configured settings.
Bot Users: Supports direct signal integration for bot automation, including entries, take-profits, and stop-losses.
🔷 How does it work: The Alligator Jaws, Teeth, and Lips are smoothed moving averages (SMA, EMA, RMA, or WMA) calculated based on the selected source price ( hl2 = (high+low)/2 by default). Their lengths and offsets are customizable:
Jaws: Length 21 , offset 13.
Teeth: Length 13, offset 8.
Lips: Length 8 , offset 5.
When the lines align and spread apart (e.g., Lips > Teeth > Jaws for an uptrend), the strategy identifies a trending market.
Entry Conditions:
Long Trades: Triggered when Close > Lips > Teeth > Jaws.
Short Trades: Triggered when Close < Lips < Teeth < Jaws.
🔷 Why it’s unique:
Customization: Flexible settings for moving average types and lengths to adapt to different market conditions and strategy tester configurations.
Built-in Filters: Trend filters that can reduce false signals in certain scenarios, making it more reliable for trending markets.
Take Profit and Stop Loss:
Configurable as either percentage-based or dynamic.
Stop-loss levels adjust dynamically using the Alligator lines.
Fast exit logic moves the stop-loss closer to the price when trades are in profit.
3Commas Bot Compatibility: Designed for automated trading, allowing traders to configure and execute the strategy seamlessly.
🔷 Considerations Before Using the Indicator
🔸Why the Forward Offset: By shifting the averages forward, the Alligator helps traders focus on established trends while filtering out short-term market noise.
The standard configurations of 13-8, 8-5, and 5-3 were selected based on Bill Williams’ studies of market behavior. However, these values can be adjusted to suit different market conditions:
Volatile Markets: Faster settings (e.g., 10-6, 6-4, 3-2) may provide earlier signals.
Less Volatile Markets: Slower settings (e.g., 21-13, 13-8, 8-5) can help avoid noise and reduce false signals.
🔸Best Timeframes to Use: The Alligator can be applied across all timeframes, but certain timeframes offer better reliability.
Higher Timeframes (H4, D1, W1): Ideal for identifying significant trends and for swing or position trading.
Lower Timeframes: Not recommended due to increased noise but may work for scalping with additional confirmation tools.
🔸Disadvantages of the Alligator Strategy:
Exhausted Entry Levels: High buying levels or low selling levels can lead to momentum exhaustion and potential pullbacks.
False Signals in Ranges: Consolidating markets can produce unreliable signals.
Lagging Indicator: As it is based on moving averages, it may delay reacting to sudden price changes.
🔸Advantages of the Alligator Strategy:
Trend Focused: Simplifies the identification of trending markets.
Noise Reduction: Forward shifts and smoothed averages help filter out short-term price fluctuations.
Broad Applicability: Suitable for forex, crypto, stocks, and commodities.
🔸Important Considerations:
While the Alligator Strategy provides a systematic way to analyze markets, it does not guarantee successful outcomes. Results in trading depend on multiple factors, including market conditions, trader discipline, and risk management. Past performance of the strategy does not ensure future success, and traders should always approach the market with caution.
Risk Management: Define stop-loss levels, position size, and profit targets before entering any trade. Be prepared for the possibility of losses and ensure that your approach aligns with your overall trading plan.
🔷 STRATEGY PROPERTIES
Symbol: BINANCE:BTCUSDT (Spot).
Timeframe: 1D (Daily Timeframe).
Test Period: All historical data available.
Initial Capital: 10000 USDT.
Order Size per Trade: 1% of Capital, you can use a higher value e.g. 5%, be cautious that the Max Drawdown does not exceed 10%, as it would indicate a very risky trading approach.
Commission: Binance commission 0.1%, adjust according to the exchange being used, lower numbers will generate unrealistic results. By using low values e.g. 5%, it allows us to adapt over time and check the functioning of the strategy.
Slippage: 5 ticks, for pairs with low liquidity or very large orders, this number should be increased as the order may not be filled at the desired level.
Margin for Long and Short Positions: 100%.
Indicator Settings: Default Configuration.
Alligator: Source hl2 | Calculation RMA | Jaw 21-13, Teeth 13-8, Lips 8-5.
Strategy: Long & Short.
Max Stop Loss per Trade: 10% of Trade Size.
Exit trades on opposite signal: Enable.
Alligator Stop Loss: Enable.
Alligator Fast Exit: Enable.
🔷 STRATEGY RESULTS
⚠️ Remember, past results do not guarantee future performance.
Net Profit: +355.68 USDT (+3.56%).
Total Closed Trades: 103.
Percent Profitable: 47.57%.
Profit Factor: 1.927.
Max Drawdown: -57.99 USDT (-0.56%).
Average Trade: +3.45 USDT (+3.41%).
Average # Bars in Trades: 16.
🔷 HOW TO USE
🔸Adjust the Alligator Settings:
The default values generally work well: Source hl2 | Calculation RMA | Jaw 21-13, Teeth 13-8, Lips 8-5. However, if you want to use it on timeframes smaller than 4H (4 hours), consider increasing the values to better filter market noise.
Please review the "Indicator Settings" section for configuration.
🔸Choose a Symbol that Typically Trends:
Select an asset that tends to create trends. However, the Strategy Tester results may display poor performance, making it less suitable for sending signals to bots.
🔸Add Trend Filters:
You can enable trend filters like MA and SuperTrend. By default, these are disabled as they are often unnecessary, but you can experiment with their configuration to see if they optimize the strategy's results.
Please review the "Indicator Settings" section for configuration.
🔸Enable Stop Loss Levels:
Activate Stop Loss features, such as Stop Loss % or Alligator Stop Loss. If both are enabled, the one closest to the price during the trade will be applied.
Please review the "Indicator Settings" section for configuration.
🔸Enable Take Profit Levels:
Activate Take Profit options, such as Take Profit % or Alligator Fast Exit. If both are enabled, the one that triggers first will be executed.
Please review the "Indicator Settings" section for configuration.
This is an example with the default settings and how Alligator Stop Loss and Alligator Fast Exit are activated:
In this example, we additionally enable the Take Profit at 10%. We can observe that the Alligator Stop Loss is the active one since it is closer to the price. When the price moves 10% in favor or against the trade, the position is closed. Although the Alligator Fast Exit is enabled, it does not activate because the trades are closed beforehand.
🔸Results Review:
It is important to check the Max Drawdown. This value should ideally not exceed 10% of your capital. Consider adjusting the trade size to ensure this threshold is not surpassed.
Remember to include the correct values for commission and slippage according to the symbol and exchange where you are conducting the tests. Otherwise, the results will not be realistic.
If you are satisfied with the results, you may consider automating your trades. However, it is strongly recommended to use a small amount of capital or a demo account to test proper execution before committing real funds.
🔸Create alerts to trigger the DCA Bot
Verify Messages: Ensure the message matches the one specified by the DCA Bot.
Multi-Pair Configuration: For multi-pair setups, enable the option to add the symbol in the correct format.
Signal Settings: Enable whether you want to receive long or short signals (Entry | TP | SL), copy and paste the the messages for the DCA Bots configured in 3Commas.
Alert Setup:
When creating an alert, set the condition to the indicator and choose "alert() function call only.
Enter any desired Alert Name.
Open the Notifications tab, enable Webhook URL, and paste the Webhook URL from 3Commas.
For more details, refer to the 3Commas section: "How to use TradingView Custom Signals.
Finalize Alerts: Click Create, you're done! Alerts will now be sent automatically in the correct format to 3Commas.
🔷 INDICATOR SETTINGS
🔸Alligator Settings
MA's source: Source price for Alligator moving averages.
MA's Type: Type of calculation for MA's.
Jaw and Offset: Jaw length and offset to the right.
Teeth and Offset: Teethlength and offset to the right.
Lips and Offset: Lips length and offset to the right.
🔸Alligator Style
Plot Alligator: Show Alligator Ribbon.
Plot MA's: Show Alligator MA's.
Colors: Main and Gradient Colors for Bullish Alligator, Berish Alligator, Neutral Alligator. For gradient colors it is recommended to use an opacity of 15.
🔸MA & SuperTrend Filters
MA & Plot: Activate MA Filter and Plot MA on the chart.
Long Entries: When activated, it will only execute entries if the price is above the MA
Short Entries: When activated, it will only execute entries if the price is below the MA.
Source: Source price for moving average calculations.
Length: Candles to be used by the MA calculations.
Type: Type of calculation for MA.
Timeframe: Here you can select a larger timeframe for the filter.
ST & Plot: Activate SuperTrend Filter and Plot SuperTrend on the chart.
Long Entries: When activated, it will only execute entries if the price is above the SuperTrend.
Short Entries: When activated, it will only execute entries if the price is below the SuperTrend.
Source: Source price for SuperTrend calculations.
Length: Candles to be used by the SuperTrend calculations.
Factor: ATR multiplier of the SuperTrend.
Timeframe: Here you can select a larger timeframe for the filter.
🔸Strategy Tester
Strategy: Order Type direction in which trades are executed.
Take Profit %: When activated, the entered value will be used as the Take Profit in percentage from the entry price level.
Stop Loss %: When activated, the entered value will be used as the Stop Loss in percentage from the entry price level. If Alligator Stop Loss is activated, the closest one to the price will be used.
Exit trades on opposite signal: This option closes the trade if the opposite condition is met. For instance, if we are in a long position and a sell signal is triggered, the long position will be closed, and a short position will be opened. The same applies inversely.
Alligator Stop Loss: In a long trade, the lower part of the Alligator indicator will be used as a dynamic stop loss. Similarly, in a short trade, the upper part of the indicator will be used.
Alligator Fast Exit: Its purpose is to attempt to protect movements in favor of the trade's direction. In the case of long trades, once the price and the upper part of the Alligator indicator are above the trade's entry price, the stop loss will be moved to the upper part. For short trades, once the price and the lower part of the Alligator indicator are below the trade's entry price, the stop loss will be moved to the lower part of the Alligator indicator.
Alligator Squeeze Entry: When activated, entries will only be executed if they meet the condition after a neutral zone of the Alligator indicator.
Alligator Squeeze Exit: When this option is activated, any open trades will be closed when the Alligator indicator enters a neutral mode.
Use Custom Test Period: When enabled signals only works in the selected time window. If disabled it will use all historical data available on the chart.
Test Start and End: Once the Custom Test Period is enabled, here you select the start and end date that you want to analyze.
🔸3Commas DCA Bot Signals
Check Messages: Enable the table to review the messages to be sent to the bot.
Entry | TP | SL: Enable this options to send Buy Entry, Take Profit (TP), and Stop Loss (SL) signals to 3Commas.
Deal Entry and Deal Exit : Copy and paste the message for the deal start signal and close order at Market Price of the DCA Bot you created in 3Commas. This is the message that will be sent with the alert to the Bot, you must verify that it is the same as the 3Commas bot so that it can process properly so that it executes and starts the trade.
DCA Bot Multi-Pair: You must activate it if you want to use the signals in a DCA Bot Multi-pair in the text box you must enter (using the 3Commas format) the symbol in which you are creating the alert, you can check the format of each symbol when you create the bot.
🔷 CONCLUSION
The Alligator Strategy is a valuable tool for identifying potential trends and improving decision-making. However, no trading strategy is foolproof. Careful consideration of market conditions, proper risk management, and personal trading goals are essential. Use the Alligator as part of a broader trading system, and remember that consistent learning and discipline are key to success in trading.
👨🏻💻💭 We hope this tool helps enhance your trading. Your feedback is invaluable, so feel free to share any suggestions for improvements or new features you'd like to see implemented.
____________________________________________________________________
The information and publications within the 3Commas TradingView account are not meant to be and do not constitute financial, investment, trading, or other types of advice or recommendations supplied or endorsed by 3Commas and any of the parties acting on behalf of 3Commas, including its employees, contractors, ambassadors, etc.
PSE, Practical Strategy EnginePSE, Practical Strategy Engine
A ready-to-use engine that is simple to connect your indicator to, simple to use, and effective at generating alerts for order-filled events during the real-time candle.
Great for
• Evaluating indicators on important metrics without the need to write a strategy script for backtesting.
• Using indicators with built-in risk management.
About The PSE
This engine accepts entry and exit signals from your indicator to provide trade signals for both long and short positions. The PSE was written for trading Funds (e.g. ETF’s), Stocks, Forex, Futures, and Cryptocurrencies. The trades on the chart indicate market, limit, and stop orders. The PSE allows for backtesting of trades along with metrics of performance based on trade-groups with many great features.
Note: A link to a video of how to connect your indicator(s) to the PSE is provided below.
Key Features
Trade-Grp’s
A Trade-Grp makes up one or more trade positions from the first position entering to the last position exiting. Using Trade-Grp’s instead of positions should help you better assess if the metric results fit your trading style.
Below are two (2) examples of a Trade-Grp with three (3) positions.
Metrics
A table of metrics is available if the “Show Metrics Table” checkbox is enabled on the Inputs tab, but metrics always show in the Data Window.
Examples of the Metrics Table are shown below.
• ROI (Return on Investment) and CAGR (Compound Annual Growth Rate) are based on the Avg Invest/Trade-Grp and are adjusted for dividends if the “Include Dividends in Profit” checkbox is enabled.
• Profit/Risked is based on Trade-Grp’s. Also known as reward/risk, as well as expectancy per amount risked. It determines the effectiveness of your strategy and provides a measure of comparison between your strategies. This is adjusted for dividends if the “Include Dividends in Profit” checkbox is enabled. In the Data Window the color is green when above the breakeven point of making a profit and red when below the breakeven point. In the Table the color is red if below the breakeven point, otherwise it is the default color. For example, using the 3 metrics tables above:
For every USD risked the profit is 1.709 USD.
For every BTC risked the profit is 0.832 BTC.
For every JPY risked the profit is 0.261 JPY.
• Winning % is based on Trade-Grp’s. In the Data Window the color is green when above the breakeven point of making a profit and red when below the breakeven point. In the Table the color is red if below the breakeven point, otherwise it is the default color.
The breakeven point is a relationship between the Profit/Risked and Winning % to indicate system profitability potential. Another way to assess trading system performance. For example, for a low Winning % a high Profit/Risked is needed for the system to be potentially profitable.
• Profit Factor (PF) is based on Trade-Grp’s. The dividend payment, if any, is not considered in the calculation of a win or loss. The “Include Dividends in Profit Factor” checkbox allows you the option to either include or not include dividends in the calculation of Profit Factor. The default is enabled.
Must enable the “Include Dividends in Profit” checkbox to include dividends in PF.
Including dividends in PF evaluates the trading strategy with a more overall profitability performance view.
Enable/Disable “Include Dividends in Profit Factor” checkbox also affects the Avg Trade-Grp Loss, and thus Equity Loss from ECL and % Equity Loss from ECL.
• Max Consecutive Losses are based on Trade-Grp’s.
• Nbr of Trade-Grp’s and Nbr of Positions.
These help you to determine if enough trades have occurred to validate your strategy. The Nbr of Positions is the count of positions on the chart. The TV list of trades in the Strategy Tester may indicate more than what is actually shown on the chart. The Data Window includes 'Nbr Strat Tester Trades', which equals the TV listing trades, to help you locate specific trades on the chart.
• Time in Market (%) is based on Trade-Grp’s and date range selected.
• Avg Invest/Trade-Grp will indicate the average amount of money invested in a Trade-Grp. This is adjusted for dividends if the “Include Dividends in Profit” checkbox is enabled.
• Equivalent Consecutive Losses, labeled as Equiv. Cons. Losses (ECL).
This value is determined by the Winning % and Nbr of Trade-Grp’s. This simulates the more likely case of a series of losses, then a small win, then another series of losses to form an equivalent consecutive losing streak. To lower the value, increase the Winning %.
• Equity Loss from ECL is the equity loss from the equivalent consecutive losses.
• % Equity Loss from ECL is the percent of equity loss from the equivalent consecutive losses.
Risk Management
• Pyramid rules enforce and maintain position sizing designated by you on the Inputs tab (% Equity to Risk, Up/Dwn Gap) & Properties tab (number of pyramids, slippage, and commission).
A pyramid position will not occur unless both its stop covers the last entry price with gap/slippage and commission cost of previous trade is covered. If take profit is enabled, a pyramid position will not occur unless commission cost of the trade is covered when take profit target is reached.
• Position sizing, stop-loss (SL), trailing stop-loss (TSL), and take profit (TP) are used.
• Wash sale prevention for applicable assets is enforced. Wash sale assets include stock and fund (e.g. ETF’s).
• No more than one entry position per candle is enforced .
Other Great Features
• Losing Trade-Grp’s indicated at the exit with label text in the color blue. Used to easily find consecutive losses affecting your strategy’s performance. The dividend payment, if any, is not considered in the calculation of a win or loss.
• Position values can be displayed on the chart. The number format is based on the min tick value, but is limited to 8 decimal places only for display purposes.
• Dividends per share and the amount can be displayed on the chart.
• Hold Days . This is the number of days to hold before allowing the next Trade-Grp. Can be a decimal number. This feature may help those trading on a cash account to avoid any settlement violations when trading the same asset.
• Date Filter. Partition the time when trading is allowed to see if the strategy works well across the date range selected. The metrics should be acceptable across all four (4) time ranges: entire range, 1st half, IQR (inter-quartile range), and 2nd half.
• Price gap amount identification. Used in determining if a pyramid entry may be profitable, and may be used in determining slippage amount to use.
• When TP is enabled, the PSE will only allow a pyramid position if the potential is profitable based on commission and price gap selected.
• Trade-Grp’s shown in background color: green for long positions and red for short positions.
• The PSE will alert you to update your stop-loss as the market changes if your exchange/broker does not allow for trailing stop-loss orders. Enable this option on the Inputs tab with Alert Chg TSL.
• The PSE will alert you if your drawdown exceeds Max % Equity Drawdown set on the Inputs tab.
• The PSE will send an alert to warn you of an expiring GTC order.
Some brokers will indicate the order is GTC, Good 'Till Cancelled, but there really is a time limit on the order and is typically 60-120 days. Therefore, the PSE will alert you if you've been in position for close to 60 days so you can refresh your order. The alert is typically a few days before the 60-day time period.
• For order fill alerts just use a {{placeholder}} in the Message of the alert. Details on how to enter placeholders is explained below.
• Identify same bar enter/exit for first entries and pyramids. This is shown in the Data Window as well. This can help you determine what stop-loss % works best for your trading style.
• Leverage trading information is displayed in the Data Window and applies to Trade-Grps.
Failed PosSize or Margin (%): Shows a zero if the failed-to-trade position size was less than 1 or shows the margin % which failed to meet the margin requirement set in the Properties tab. A flag will show on the bar where a failed-to-trade occurred. This is only applicable to the first position of a Trade-Grp. Position the cursor over the flag for the value to show in the Data Window.
Notional Value: total Trade-Grp position size x latest entry price x point value. The equity must be > notional value x margin requirement for a trade to occur.
Current Margin (%): must be greater than margin requirement set on the Properties tab in order for a trade to occur.
Margin Call Price: when enabled on the Style tab is displayed on both the chart and the Data Window as shown below.
PSE Settings
Pyramids
• Pyramiding requires the Stop Method to be set to either TSL or Both (meaning SL & TSL).
• The maximum number of pyramids is determined by the value entered in the Properties tab.
• Pyramid orders require the enter price to be higher than the previous close for Longs and lower than the previous close for Shorts.
• Pyramids also require the stop with gap/slippage to be higher than the last entry price for Longs, and lower than the last entry price for Shorts. This covers all previous positions and maintains position sizing.
• When take profit, TP, is enabled, the pyramids also require that they will be profitable when opening a position assuming they will reach TP. This is automatically adjusted by you with the Dwn Gap/Up Gap, Slippage, and Commission settings.
Inputs Tab
General Settings
Color Traded Background
Enable to change background color where in a trade. Green for long positions and red for short positions.
Show Losing Trade-Grp
Enable to show if losing Trade-Grp and is indicated by text in blue color. The last position may be at a loss, but if there was profit for the Trade-Grp, then it will not be shown as a loss .
Show Position Values
Enable to show the currency value of each position in gold color.
Include Dividends in Profit
This feature is only applicable if the asset pays dividends and the time frame period of the chart is 1D or less, otherwise ignored. The PSE assumes dividends are taken as cash and not reinvested.
Enable to adjust ROI, CAGR, Profit/Risked, Avg Invest/Trade-Grp, and Equity to include dividend payments. This feature considers if you were in position at least one day prior to the ex-dividend date and had not exited until after the ex-dividend date.
When Show Dividends is enabled it will display the payout in currency/share, as well as the total amount based on the number of shares the position(s) of the Trade-Grp are currently holding.
Include Dividends in Profit Factor
This checkbox allows you the option to either include or not include dividends in the calculation of Profit Factor. Must enable the “Include Dividends in Profit” checkbox to include dividends in PF. The dividend payment, if any, is not considered in the calculation of a win or loss.
Show Metrics Table
Options are font size and table location.
Alert Failed to Trade
Enable for the strategy to alert you when a trade did not happen due to low equity or low order size. Applicable only for the first position of a Trade-Grp.
Trade Direction
Options are 'Longs Only', 'Both', 'Shorts Only'.
Hold Days
This is the number of days to hold before allowing the next Trade-Grp. Applies only to the first trade position of a Trade-Grp. Where a Trade-Grp consists of the first position plus any pyramid positions.
The value entered will be overwritten to >= 31 to prevent wash sale for applicable assets in the event the last Trade-Grp was a loss. Wash sale assets include stock and fund (i.e. ETF’s).
The minimum value is the equivalent of 1 candle and is automatically assigned by the PSE if the entered value is equivalent to less than one candle. To calculate Hold Days in # of candles on the Hour chart divide the chart period by 24 x #candles. On the Minute chart divide the chart period by 60 then by 24 x #candles.
Show Vertical Lines at From Date & To Date
Shows a vertical dotted line at the From Date and To Date for visual inspection of the setting.
Date Filter
When enabled, trades are allowed between the From Date and To Date, i.e., the date range.
When disabled, trades are allowed for all candles.
Partition the time when trading is allowed to see if your indicator settings work well across the date range. Click 1st Half, IQR (inter-quartile range), or 2nd Half buttons to trade a portion of the date range.
Select only one at-a-time to partition the time when trading is allowed.
When 1st Half is enabled only trades for the 1st half of the date range are allowed.
When IQR is enabled only trades for the inter-quartile date range are allowed.
When 2nd Half is enabled only trades for the 2nd half of the date range are allowed.
Position Sizing
The % of Equity to Risk has been separated into two (2) areas: for initial trades and for pyramid trades. This allows for greater ability to maximize profits within your acceptable drawdown. A variation of the Anti-Martingale method from the initial trade if you choose to use it in that manner.
% Equity to Risk for Initial Trades: enter the percent of equity you want to risk per position for the initial trades of each Trade-Grp. For example, for 1% enter 1.
% Equity to Risk for Pyramid Trades: enter the percent of equity you want to risk per position for the pyramid trades of each Trade-Grp. For example, for 2% enter 2.
% Equity for Max Position Size: the position size will not exceed this amount. For example, for 25% enter 25.
Max % Equity Drawdown Warning: an alert will be triggered if the maximum drawdown exceeds this v alue. For example, for 10% enter 10.
Stop Methods
NOTE: The Stop Method must be either Both or TSL in order for the pyramids to work. This feature enforces position sizing.
Stop-loss, SL, and trailing stop-loss, TSL, are other features that enforce risk management.
The trailing stop-loss, TSL, is activated immediately if Stop Method = TSL. If Stop Method = Both, then the TSL is activated when its value is above stop-loss, SL, for Longs and below the SL for Shorts.
The calculated TSL value (shown on the chart by + symbol) of the previous bar is used for the current bar and the plot value is off by default, but you can it turn on via the Style tab. This is available so you can better understand how the TSL value used was calculated from. It is beneficial to show when monitoring the real-time candle.
Alert Chg TSL
When enabled, this feature will alert you to update your stop price if it moves greater than the change amount in %. The amount is the absolute % so will work for both Longs and Shorts. For example, for 1% enter 1 . This is provided since some exchanges/brokers do not offer TSL orders and you must manually adjust as price action plays out.
The alert will also suggest a stop limit price based on the gap selected and explained below.
The alert will occur at the close of the candle at the calculated TSL value of the candle just prior to the real-time candle.
Dwn Gap/Up Gap Input Settings
A price gap is the difference between the closing price of the previous candle and the opening price of the current candle. Dwn Gap and Up Gap are illustrated here.
The values of the Dwn Gap and Up Gap can be seen in the Data Window and are based on the settings of the Date Filter.
The options are “zero gap”, "median gap", "avg gap", "80 pct gap", "90 pct gap". The X pct gap stands for X percentile rank. For example, "80 pct gap" means that 80% of the gaps are less than or equal to the value shown in the Data Window. Select “zero gap” to disable this feature.
If Show Stop Limit is enabled, it will show a dotted-line below or above the current stop price where a stop-limit order should be taken. It is shown based on the gap option selected. Again, the PSE trades market, limit, and stop orders, but a stop-limit may be shown if you wanted to see where one would be set using the Up/Dwn Gap.
Dwn Gap: Affects Short Take Profit, Long Pyramid Entries, and to show the Long Stop Limit.
Up Gap : Affects Long Take Profit, Short Pyramid Entries, and to show the Short Stop Limit.
Fixed Take Profit (TP)
When take profit (TP) is enabled, the PSE will determine if opening a pyramid position will be in profit assuming the TP will be hit while considering commission costs (on Properties tab).
The larger of Up Gap or Slippage value is used with Long positions regarding TP.
The larger of Dwn Gap or Slippage value is used with Short positions regarding TP.
Properties Tab
• Initial Capital: Set as desired.
• Base Currency: Leave as Default. The PSE is designed to use the instrument’s currency, therefore leave as Default.
• Order Size: Leave as default. This setting has been disabled and position sizing is handled on the Inputs tab and is based on % of equity.
• Pyramiding: Set as desired.
• Commission: Set as number %. The PSE is designed to only work with commission as a percent of the position value.
• Verify Price for Limit Orders: Set as desired.
Slippage
Adjust Slippage on the Properties tab to account for a realistic bid-ask spread. You can use one of Dwn/Up Gap values or other guidelines. Again, the Dwn/Up Gap values are based on the Date Filter input settings.
Heed warnings from the TradingView Pine Script™ manual about values entered into the Slippage field.
The Slippage (ticks) have a noticeable influence on entry price and exit price especially at the beginning when the date range includes prices from $0.01 to $100,000.00 like that for BTC-USD INDEX. When this is the case, it is best to use different slippage values when partitioning time with the Date Filter.
To minimize the effects of slippage, yet account for it select ‘median gap’ on the Input Tab and use that value for slippage on the Properties tab.
The slippage value is included in the placeholder {{strategy.order.price}}.
Leverage Trading
The PSE is designed to be used both without leverage (the default) and with leverage.
These two settings apply to Trade-Grps. For example, for 5x leverage enter 20 (1/5x100=20).
Margin for Long Positions: Set as desired. The default is 100%.
Margin for Short Positions: Set as desired. The default is 100%.
This setting on the Inputs tab applies to each trade position within a Trade-Grp.
Max % Equity per Position: Set as desired. The default is 20% and intended for non-leverage trading. For leverage trading set as desired. For example, for 3x leverage enter 300 (3x100=300).
Recalculate After Order Is Filled
The PSE uses the strategy parameter calc_on_order_fills=true to allow for enter/exit on the same bar and generate alerts immediately after an order is filled. This parameter is on the Properties tab and is named ‘Recalculate After order is filled’ and is enabled by default.
Disabling this feature will cause the PSE to not work as intended.
You will see the following Caution! on the TV Strategy Tester
This occurs because the PSE has the strategy parameter calc_on_order_fills = true.
Again, the PSE will only work as intended if this parameter is enabled and set to true.
Therefore, you can close the caution sign and be confident of receiving realistic results.
Recalculate On every tick: Disable.
Fill Orders
• Using bar magnifier: Set as desired.
• On Bar Close: Disable. The PSE will not work as intended if this is enabled.
• Using Standard OHLC: Set as desired.
Using The Alert Message Box From TV Strategy Alert
Set alerts to gain access to all the alerts from PSE. This allows for both order filled alerts, as well as the alert function calls related to refresh GTC orders, drawdown exceeded, update stop-loss order, and Failed to Trade.
Example Message for Manual Trading Alerts
(This is just an example. Consult TV manual for possible placeholders to use.)
{
Alert for {{plot("position_for_alert")}} position. (long = 1; short = -1)
{{exchange}}:{{ticker}} on TF of {{interval}} at Broker Name
{{strategy.order.action}} Equity x Equity_Multiplier USD in shares at price = {{strategy.order.price}},
where Equity_Multiplier = {{strategy.order.contracts}} x {{strategy.order.price}} / {{plot("Equity")}}
or {{strategy.order.action}} {{strategy.order.contracts}} shares at price = {{strategy.order.price}}.
}
Note: Use the Equity x Equity_Multiplier method if you have several accounts with different initial capital.
Example Message for Bot Trading Alerts
(You must consult your specific bot for configuring the alert message. This is just an example.)
{
"action": "{{strategy.order.action}}",
“price”: {{strategy.order.price}}
"amount": {{strategy.order.contracts}},
"botId": "1234"
}
Connecting to the PSE
The diagram below illustrates how to connect indicators to the PSE.
The Aroon and MACD indicators are only used here as an example. Substitute your own indicators and add as many as you like.
Connection Indicator for the PSE
A video of how to connect your indicator(s) to the PSE is below.
The Connection Indicator for the PSE, also called here the connection-indicator.
Below is a description of how to connect your chosen indicators to the connection-indicator. Two (2) indicators were chosen for the example, but you may have one (1) or many indicators.
If you have source code access to your indicators you can paste the code directly into the connection-indicator to eliminate the need to have those indicators on the chart and the additional connection of them to the connection-indicator. Below will assume source code to the indicators are not available.
The MACD and Aroon Oscillator are from TV built standard indicators and are shown here just as an example for inputs (i.e. source) to the connection-indicator. They were configured as follows:
The source code for the connection-indicator is shown below. Substitute your own chosen indicators and add as many as you like to create your connection-indicator that feeds into the PSE. The MACD and Aroon Oscillator were simply chosen as an example. Configure your connection-indicator in the manner shown below.
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// This is just an example Indicator to show how to interface with the PSE.
// The indicators used in the example are standard TV built indicators.
//@version=5
indicator(title="Connection Indicator for the PSE", overlay=false, max_lines_count=500, max_labels_count=500, max_boxes_count=500)
// Ind_1 INDICATOR ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// This is just and example and used MACD histogram as the source.
Filter_Ind_1 = input.bool(false, 'Ind_1', group='Ind_1 INDICATOR ~~~~~~~~~~~~~~~~~', tooltip='Click ON to enable the indicator')
input_Ind_1 = input.source(title = "input_Ind_1", defval = close, group='Ind_1 INDICATOR ~~~~~~~~~~~~~~~~~')
Entry_Ind_1_Long = Filter_Ind_1 ? input_Ind_1 > 0 ? 1 : 0 : 0
Entry_Ind_1_Short = Filter_Ind_1 ? input_Ind_1 < 0 ? 1 : 0 : 0
Exit_Ind_1_Long = Entry_Ind_1_Short
Exit_Ind_1_Short = Entry_Ind_1_Long
// Ind_2 INDICATOR ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// This is just an example and used Aroon Oscillator as the source. Included limits to use with the oscillator to determine enter and exit.
Filter_Ind_2 = input.bool(false, "Ind_2", group='Ind_2 INDICATOR ~~~~~~~~~~~~~~', tooltip='Click ON to enable the indicator')
Filter_Ind_2_Limit = input.int(35, minval=0, step=5, group='Ind_2 INDICATOR ~~~~~~~~~~~~~~')
Filter_Ind_2_UL = Filter_Ind_2_Limit
Filter_Ind_2_LL = -Filter_Ind_2_Limit
up = input.source(title = "input_Ind_2A Up", defval = close, group='Ind_2 INDICATOR ~~~~~~~~~~~~~~')
down = input.source(title = "input_Ind_2B Down", defval = close, group='Ind_2 INDICATOR ~~~~~~~~~~~~~~')
oscillator = up - down
Entry_Ind_2_Long = Filter_Ind_2? oscillator > Filter_Ind_2_UL ? 1 : 0 : 0
Entry_Ind_2_Short = Filter_Ind_2? oscillator < Filter_Ind_2_LL ? 1 : 0 : 0
Exit_Ind_2_Long = Entry_Ind_2_Short
Exit_Ind_2_Short = Entry_Ind_2_Long
//#region ~~~~~~~ASSEMBLY OF FILTERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// You may have as many indicators as you like. Assemble them in similar fashion as below.
// ——————— Assembly of Entry Filters
Nbr_Entries = input.int(1, minval=1, title='Min Nbr Entries', inline='nbr_in_out', group='Assembly of Indicators')
// Update the assembly based on the number of indicators connected.
EntryLongOK = Entry_Ind_1_Long + Entry_Ind_2_Long >= Nbr_Entries? true: false
EntryShortOK = Entry_Ind_1_Short + Entry_Ind_2_Short >= Nbr_Entries? true: false
entry_signal = EntryLongOK ? 1 : EntryShortOK ? -1 : 0
plot(entry_signal, title="Entry_Signal", color=color.new(color.blue, 0))
// ——————— Assembly of Exit Filters
Nbr_Exits = input.int(1, minval=1, title='Min Nbr of Exits', inline='nbr_in_out', group='Assembly of Indicators', tooltip='Enter the minimum number of entries & exits
required for a signal.')
// Update the assembly based on the number of indicators connected.
ExitLongOK = Exit_Ind_1_Long + Exit_Ind_2_Long >= Nbr_Exits? true: false
ExitShortOK = Exit_Ind_1_Short + Exit_Ind_2_Short >= Nbr_Exits? true: false
exit_signal = ExitLongOK ? 1 : ExitShortOK ? -1 : 0
plot(exit_signal, title="Exit_Signal", color=color.new(color.red, 0))
//#endregion ~~~~~~~END OF ASSEMBLY OF FILTERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
The input box for the connection-indicator is shown below. The default for input source is “close”. For Input_Ind_1 click the dropdown and select the MACD Histogram. For Input_Ind_2 click the dropdown and select Aroon Up and Aroon Down as shown.
Signal Connection Section of PSE
Below is a description of how to connect your chosen indicators to the PSE from the connection-indicator.
At the PSE Input tab, the Signal Connection Section is where you select the source of the Entry and Exit Signal to the PSE. These are the outputs from connection-indicator.
The default source is “close”. Click the dropdown and select the entry and exit signal to establish a connection as shown below.
AlgoBuilder [Trend-Following] | FractalystWhat's the strategy's purpose and functionality?
This strategy is designed for both traders and investors looking to rely on and trade based on historical and backtested data using automation. The main goal is to build profitable trend-following strategies that outperform the underlying asset in terms of returns while minimizing drawdown. For example, as for a benchmark, if the S&P 500 (SPX) has achieved an estimated 10% annual return with a maximum drawdown of -57% over the past 20 years, using this strategy with different entry and exit techniques, users can potentially seek ways to achieve a higher Compound Annual Growth Rate (CAGR) while maintaining a lower maximum drawdown.
Although the strategy can be applied to all markets and timeframes, it is most effective on stocks, indices, future markets, cryptocurrencies, and commodities and JPY currency pairs given their trending behaviors.
In trending market conditions, the strategy employs a combination of moving averages and diverse entry models to identify and capitalize on upward market movements. It integrates market structure-based trailing stop-loss mechanisms across different timeframes and provides exit techniques, including percentage-based and risk-reward (RR) based take profit levels.
Additionally, the strategy has also a feature that includes a built-in probability and sentiment function for traders who want to implement probabilities and market sentiment right into their trading strategies.
Performance summary, weekly, and monthly tables enable quick visualization of performance metrics like net profit, maximum drawdown, compound annual growth rate (CAGR), profit factor, average trade, average risk-reward ratio (RR), and more. This aids optimization to meet specific goals and risk tolerance levels effectively.
-----
How does the strategy perform for both investors and traders?
The strategy has two main modes, tailored for different market participants: Traders and Investors.
Trading:
1. Trading (1x):
- Designed for traders looking to capitalize on bullish trending markets.
- Utilizes a percentage risk per trade to manage risk and optimize returns.
- Suitable for active trading with a focus on trend-following and risk management.
- (1x) This mode ensures no stacking of positions, allowing for only one running position or trade at a time.
◓: Mode | %: Risk percentage per trade
2. Trading (2x):
Similar to the 1x mode but allows for two pyramiding entries.
This approach enables traders to increase their position size as the trade moves in their favor, potentially enhancing profits during strong bullish trends.
◓: Mode | %: Risk percentage per trade
3. Investing:
- Geared towards investors who aim to capitalize on bullish trending markets without using leverage while mitigating the asset's maximum drawdown.
- Utilizes 100% of the equity to buy, hold, and manage the asset.
- Focuses on long-term growth and capital appreciation by fully investing in the asset during bullish conditions.
- ◓: Mode | %: Risk not applied (In investing mode, the strategy uses 100% of equity to buy the asset)
-----
What's the purpose of using moving averages in this strategy? What are the underlying calculations?
Using moving averages is a widely-used technique to trade with the trend.
The main purpose of using moving averages in this strategy is to filter out bearish price action and to only take trades when the price is trading ABOVE specified moving averages.
The script uses different types of moving averages with user-adjustable timeframes and periods/lengths, allowing traders to try out different variations to maximize strategy performance and minimize drawdowns.
By applying these calculations, the strategy effectively identifies bullish trends and avoids market conditions that are not conducive to profitable trades.
The MA filter allows traders to choose whether they want a specific moving average above or below another one as their entry condition.
This comparison filter can be turned on (>/<) or off.
For example, you can set the filter so that MA#1 > MA#2, meaning the first moving average must be above the second one before the script looks for entry conditions. This adds an extra layer of trend confirmation, ensuring that trades are only taken in more favorable market conditions.
MA #1: Fast MA | MA #2: Medium MA | MA #3: Slow MA
⍺: MA Period | Σ: MA Timeframe
-----
What entry modes are used in this strategy? What are the underlying calculations?
The strategy by default uses two different techniques for the entry criteria with user-adjustable left and right bars: Breakout and Fractal.
1. Breakout Entries :
- The strategy looks for pivot high points with a default period of 3.
- It stores the most recent high level in a variable.
- When the price crosses above this most recent level, the strategy checks if all conditions are met and the bar is closed before taking the buy entry.
◧: Pivot high left bars period | ◨: Pivot high right bars period
2. Fractal Entries :
- The strategy looks for pivot low points with a default period of 3.
- When a pivot low is detected, the strategy checks if all conditions are met and the bar is closed before taking the buy entry.
◧: Pivot low left bars period | ◨: Pivot low right bars period
By utilizing these entry modes, the strategy aims to capitalize on bullish price movements while ensuring that the necessary conditions are met to validate the entry points.
-----
What type of stop-loss identification method are used in this strategy? What are the underlying calculations?
Initial Stop-Loss:
1. ATR Based:
The Average True Range (ATR) is a method used in technical analysis to measure volatility. It is not used to indicate the direction of price but to measure volatility, especially volatility caused by price gaps or limit moves.
Calculation:
- To calculate the ATR, the True Range (TR) first needs to be identified. The TR takes into account the most current period high/low range as well as the previous period close.
The True Range is the largest of the following:
- Current Period High minus Current Period Low
- Absolute Value of Current Period High minus Previous Period Close
- Absolute Value of Current Period Low minus Previous Period Close
- The ATR is then calculated as the moving average of the TR over a specified period. (The default period is 14).
Example - ATR (14) * 1.5
⍺: ATR period | Σ: ATR Multiplier
2. ADR Based:
The Average Day Range (ADR) is an indicator that measures the volatility of an asset by showing the average movement of the price between the high and the low over the last several days.
Calculation:
- To calculate the ADR for a particular day:
- Calculate the average of the high prices over a specified number of days.
- Calculate the average of the low prices over the same number of days.
- Find the difference between these average values.
- The default period for calculating the ADR is 14 days. A shorter period may introduce more noise, while a longer period may be slower to react to new market movements.
Example - ADR (14) * 1.5
⍺: ADR period | Σ: ADR Multiplier
Application in Strategy:
- The strategy calculates the current bar's ADR/ATR with a user-defined period.
- It then multiplies the ADR/ATR by a user-defined multiplier to determine the initial stop-loss level.
By using these methods, the strategy dynamically adjusts the initial stop-loss based on market volatility, helping to protect against adverse price movements while allowing for enough room for trades to develop.
Trailing Stop-Loss:
One of the key elements of this strategy is its ability to detec buyside and sellside liquidity levels across multiple timeframes to trail the stop-loss once the trade is in running profits.
By utilizing this approach, the strategy allows enough room for price to run.
There are two built-in trailing stop-loss (SL) options you can choose from while in a trade:
1. External Trailing Stop-Loss:
- Uses sell-side liquidity to trail your stop-loss, allowing price to consolidate before continuation. This method is less aggressive and provides more room for price fluctuations.
Example - External - Wick below the trailing SL - 12H trailing timeframe
⍺: Exit type | Σ: Trailing stop-loss timeframe
2. Internal Trailing Stop-Loss:
- Uses the most recent swing low with a period of 2 to trail your stop-loss. This method is more aggressive compared to the external trailing stop-loss, as it tightens the stop-loss closer to the current price action.
Example - Internal - Close below the trailing SL - 6H trailing timeframe
⍺: Exit type | Σ: Trailing stop-loss timeframe
Each market behaves differently across various timeframes, and it is essential to test different parameters and optimizations to find out which trailing stop-loss method gives you the desired results and performance.
-----
What type of break-even and take profit identification methods are used in this strategy? What are the underlying calculations?
For Break-Even:
- You can choose to set a break-even level at which your initial stop-loss moves to the entry price as soon as it hits, and your trailing stop-loss gets activated (if enabled).
- You can select either a percentage (%) or risk-to-reward (RR) based break-even, allowing you to set your break-even level as a percentage amount above the entry price or based on RR.
For TP1 (Take Profit 1):
- You can choose to set a take profit level at which your position gets fully closed or 50% if the TP2 boolean is enabled.
- Similar to break-even, you can select either a percentage (%) or risk-to-reward (RR) based take profit level, allowing you to set your TP1 level as a percentage amount above the entry price or based on RR.
For TP2 (Take Profit 2):
- You can choose to set a take profit level at which your position gets fully closed.
- As with break-even and TP1, you can select either a percentage (%) or risk-to-reward (RR) based take profit level, allowing you to set your TP2 level as a percentage amount above the entry price or based on RR.
The underlying calculations involve determining the price levels at which these actions are triggered. For break-even, it moves the initial stop-loss to the entry price and activate the trailing stop-loss once the break-even level is reached.
For TP1 and TP2, it's specifying the price levels at which the position is partially or fully closed based on the chosen method (percentage or RR) above the entry price.
These calculations are crucial for managing risk and optimizing profitability in the strategy.
⍺: BE/TP type (%/RR) | Σ: how many RR/% above the current price
-----
What's the ADR filter? What does it do? What are the underlying calculations?
The Average Day Range (ADR) measures the volatility of an asset by showing the average movement of the price between the high and the low over the last several days.
The period of the ADR filter used in this strategy is tied to the same period you've used for your initial stop-loss.
Users can define the minimum ADR they want to be met before the script looks for entry conditions.
ADR Bias Filter:
- Compares the current bar ADR with the ADR (Defined by user):
- If the current ADR is higher, it indicates that volatility has increased compared to ADR (DbU).(⬆)
- If the current ADR is lower, it indicates that volatility has decreased compared to ADR (DbU).(⬇)
Calculations:
1. Calculate ADR:
- Average the high prices over the specified period.
- Average the low prices over the same period.
- Find the difference between these average values in %.
2. Current ADR vs. ADR (DbU):
- Calculate the ADR for the current bar.
- Calculate the ADR (DbU).
- Compare the two values to determine if volatility has increased or decreased.
By using the ADR filter, the strategy ensures that trades are only taken in favorable market conditions where volatility meets the user's defined threshold, thus optimizing entry conditions and potentially improving the overall performance of the strategy.
>: Minimum required ADR for entry | %: Current ADR comparison to ADR of 14 days ago.
-----
What's the probability filter? What are the underlying calculations?
The probability filter is designed to enhance trade entries by using buyside liquidity and probability analysis to filter out unfavorable conditions.
This filter helps in identifying optimal entry points where the likelihood of a profitable trade is higher.
Calculations:
1. Understanding Swing highs and Swing Lows
Swing High: A Swing High is formed when there is a high with 2 lower highs to the left and right.
Swing Low: A Swing Low is formed when there is a low with 2 higher lows to the left and right.
2. Understanding the purpose and the underlying calculations behind Buyside, Sellside and Equilibrium levels.
3. Understanding probability calculations
1. Upon the formation of a new range, the script waits for the price to reach and tap into equilibrium or the 50% level. Status: "⏸" - Inactive
2. Once equilibrium is tapped into, the equilibrium status becomes activated and it waits for either liquidity side to be hit. Status: "▶" - Active
3. If the buyside liquidity is hit, the script adds to the count of successful buyside liquidity occurrences. Similarly, if the sellside is tapped, it records successful sellside liquidity occurrences.
5. Finally, the number of successful occurrences for each side is divided by the overall count individually to calculate the range probabilities.
Note: The calculations are performed independently for each directional range. A range is considered bearish if the previous breakout was through a sellside liquidity. Conversely, a range is considered bullish if the most recent breakout was through a buyside liquidity.
Example - BSL > 50%
-----
What's the sentiment Filter? What are the underlying calculations?
Sentiment filter aims to calculate the percentage level of bullish or bearish fluctuations within equally divided price sections, in the latest price range.
Calculations:
This filter calculates the current sentiment by identifying the highest swing high and the lowest swing low, then evenly dividing the distance between them into percentage amounts. If the price is above the 50% mark, it indicates bullishness, whereas if it's below 50%, it suggests bearishness.
Sentiment Bias Identification:
Bullish Bias: The current price is trading above the 50% daily range.
Bearish Bias: The current price is trading below the 50% daily range.
Example - Sentiment Enabled | Bullish degree above 50% | Bullish sentimental bias
>: Minimum required sentiment for entry | %: Current sentimental degree in a (Bullish/Bearish) sentimental bias
-----
What's the range length Filter? What are the underlying calculations?
The range length filter identifies the price distance between buyside and sellside liquidity levels in percentage terms. When enabled, the script only looks for entries when the minimum range length is met. This helps ensure that trades are taken in markets with sufficient price movement.
Calculations:
Range Length (%) = ( ( Buyside Level − Sellside Level ) / Current Price ) ×100
Range Bias Identification:
Bullish Bias: The current range price has broken above the previous external swing high.
Bearish Bias: The current range price has broken below the previous external swing low.
Example - Range length filter is enabled | Range must be above 5% | Price must be in a bearish range
>: Minimum required range length for entry | %: Current range length percentage in a (Bullish/Bearish) range
-----
What's the day filter Filter, what does it do?
The day filter allows users to customize the session time and choose the specific days they want to include in the strategy session. This helps traders tailor their strategies to particular trading sessions or days of the week when they believe the market conditions are more favorable for their trading style.
Customize Session Time:
Users can define the start and end times for the trading session.
This allows the strategy to only consider trades within the specified time window, focusing on periods of higher market activity or preferred trading hours.
Select Days:
Users can select which days of the week to include in the strategy.
This feature is useful for excluding days with historically lower volatility or unfavorable trading conditions (e.g., Mondays or Fridays).
Benefits:
Focus on Optimal Trading Periods:
By customizing session times and days, traders can focus on periods when the market is more likely to present profitable opportunities.
Avoid Unfavorable Conditions:
Excluding specific days or times can help avoid trading during periods of low liquidity or high unpredictability, such as major news events or holidays.
Increased Flexibility: The filter provides increased flexibility, allowing traders to adapt the strategy to their specific needs and preferences.
Example - Day filter | Session Filter
θ: Session time | Exchange time-zone
-----
What tables are available in this script?
Table Type:
- Summary: Provides a general overview, displaying key performance parameters such as Net Profit, Profit Factor, Max Drawdown, Average Trade, Closed Trades, Compound Annual Growth Rate (CAGR), MAR and more.
CAGR: It calculates the 'Compound Annual Growth Rate' first and last taken trades on your chart. The CAGR is a notional, annualized growth rate that assumes all profits are reinvested. It only takes into account the prices of the two end points — not drawdowns, so it does not calculate risk. It can be used as a yardstick to compare the performance of two strategies. Since it annualizes values, it requires a minimum 4H timeframe to display the CAGR value. annualizing returns over smaller periods of times doesn't produce very meaningful figures.
MAR: Measure of return adjusted for risk: CAGR divided by Max Drawdown. Indicates how comfortable the system might be to trade. Higher than 0.5 is ideal, 1.0 and above is very good, and anything above 3.0 should be considered suspicious and you need to make sure the total number of trades are high enough by running a Deep Backtest in strategy tester. (available for TradingView Premium users.)
Avg Trade: The sum of money gained or lost by the average trade generated by a strategy. Calculated by dividing the Net Profit by the overall number of closed trades. An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.
MaxDD: Displays the largest drawdown of losses, i.e., the maximum possible loss that the strategy could have incurred among all of the trades it has made. This value is calculated separately for every bar that the strategy spends with an open position.
Profit Factor: The amount of money a trading strategy made for every unit of money it lost (in the selected currency). This value is calculated by dividing gross profits by gross losses.
Avg RR: This is calculated by dividing the average winning trade by the average losing trade. This field is not a very meaningful value by itself because it does not take into account the ratio of the number of winning vs losing trades, and strategies can have different approaches to profitability. A strategy may trade at every possibility in order to capture many small profits, yet have an average losing trade greater than the average winning trade. The higher this value is, the better, but it should be considered together with the percentage of winning trades and the net profit.
Winrate: The percentage of winning trades generated by a strategy. Calculated by dividing the number of winning trades by the total number of closed trades generated by a strategy. Percent profitable is not a very reliable measure by itself. A strategy could have many small winning trades, making the percent profitable high with a small average winning trade, or a few big winning trades accounting for a low percent profitable and a big average winning trade. Most trend-following successful strategies have a percent profitability of 15-40% but are profitable due to risk management control.
BE Trades: Number of break-even trades, excluding commission/slippage.
Losing Trades: The total number of losing trades generated by the strategy.
Winning Trades: The total number of winning trades generated by the strategy.
Total Trades: Total number of taken traders visible your charts.
Net Profit: The overall profit or loss (in the selected currency) achieved by the trading strategy in the test period. The value is the sum of all values from the Profit column (on the List of Trades tab), taking into account the sign.
- Monthly: Displays performance data on a month-by-month basis, allowing users to analyze performance trends over each month.
- Weekly: Displays performance data on a week-by-week basis, helping users to understand weekly performance variations.
- OFF: Hides the performance table.
Labels:
- OFF: Hides labels in the performance table.
- PnL: Shows the profit and loss of each trade individually, providing detailed insights into the performance of each trade.
- Range: Shows the range length and Average Day Range (ADR), offering additional context about market conditions during each trade.
Profit Color:
- Allows users to set the color for representing profit in the performance table, helping to quickly distinguish profitable periods.
Loss Color:
- Allows users to set the color for representing loss in the performance table, helping to quickly identify loss-making periods.
These customizable tables provide traders with flexible and detailed performance analysis, aiding in better strategy evaluation and optimization.
-----
User-input styles and customizations:
To facilitate studying historical data, all conditions and rules can be applied to your charts. By plotting background colors on your charts, you'll be able to identify what worked and what didn't in certain market conditions.
Please note that all background colors in the style are disabled by default to enhance visualization.
-----
How to Use This Algobuilder to Create a Profitable Edge and System:
Choose Your Strategy mode:
- Decide whether you are creating an investing strategy or a trading strategy.
Select a Market:
- Choose a one-sided market such as stocks, indices, or cryptocurrencies.
Historical Data:
- Ensure the historical data covers at least 10 years of price action for robust backtesting.
Timeframe Selection:
- Choose the timeframe you are comfortable trading with. It is strongly recommended to use a timeframe above 15 minutes to minimize the impact of commissions on your profits.
Set Commission and Slippage:
- Properly set the commission and slippage in the strategy properties according to your broker or prop firm specifications.
Parameter Optimization:
- Use trial and error to test different parameters until you find the performance results you are looking for in the summary table or, preferably, through deep backtesting using the strategy tester.
Trade Count:
- Ensure the number of trades is 100 or more; the higher, the better for statistical significance.
Positive Average Trade:
- Make sure the average trade value is above zero.
(An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.)
Performance Metrics:
- Look for a high profit factor, MAR (Mar Ratio), CAGR (Compound Annual Growth Rate), and net profit with minimum drawdown. Ideally, aim for a drawdown under 20-30%, depending on your risk tolerance.
Refinement and Optimization:
- Try out different markets and timeframes.
- Continue working on refining your edge using the available filters and components to further optimize your strategy.
Automation:
- Once you’re confident in your strategy, you can use the automation section to connect the algorithm to your broker or prop firm.
- Trade a fully automated and backtested trading strategy, allowing for hands-free execution and management.
-----
What makes this strategy original?
1. Incorporating direct integration of probabilities into the strategy.
2. Leveraging market sentiment to construct a profitable approach.
3. Utilizing built-in market structure-based trailing stop-loss mechanisms across various timeframes.
4. Offering both investing and trading strategies, facilitating optimization from different perspectives.
5. Automation for efficient execution.
6. Providing a summary table for instant access to key parameters of the strategy.
-----
How to use automation?
For Traders:
1. Ensure the strategy parameters are properly set based on your optimized parameters.
2. Enter your PineConnector License ID in the designated field.
3. Specify the desired risk level.
4. Provide the Metatrader symbol.
5. Check for chart updates to ensure the automation table appears on the top right corner, displaying your License ID, risk, and symbol.
6. Set up an alert with the strategy selected as Condition and the Message as {{strategy.order.alert_message}}.
7. Activate the Webhook URL in the Notifications section, setting it as the official PineConnector webhook address.
8. Double-check all settings on PineConnector to ensure the connection is successful.
9. Create the alert for entry/exit automation.
For Investors:
1. Ensure the strategy parameters are properly set based on your optimized parameters.
2. Choose "Investing" in the user-input settings.
3. Create an alert with a specified name.
4. Customize the notifications tab to receive alerts via email.
5. Buying/selling alerts will be triggered instantly upon entry or exit order execution.
----
Strategy Properties
This script backtest is done on 4H COINBASE:BTCUSD , using the following backtesting properties:
Balance: $5000
Order Size: 10% of the equity
Risk % per trade: 1%
Commission: 0.04% (Default commission percentage according to TradingView competitions rules)
Slippage: 75 ticks
Pyramiding: 2
-----
Terms and Conditions | Disclaimer
Our charting tools are provided for informational and educational purposes only and should not be construed as financial, investment, or trading advice. They are not intended to forecast market movements or offer specific recommendations. Users should understand that past performance does not guarantee future results and should not base financial decisions solely on historical data.
Built-in components, features, and functionalities of our charting tools are the intellectual property of @Fractalyst Unauthorized use, reproduction, or distribution of these proprietary elements is prohibited.
By continuing to use our charting tools, the user acknowledges and accepts the Terms and Conditions outlined in this legal disclaimer and agrees to respect our intellectual property rights and comply with all applicable laws and regulations.
Supertrend Advance Pullback StrategyHandbook for the Supertrend Advance Strategy
1. Introduction
Purpose of the Handbook:
The main purpose of this handbook is to serve as a comprehensive guide for traders and investors who are looking to explore and harness the potential of the Supertrend Advance Strategy. In the rapidly changing financial market, having the right tools and strategies at one's disposal is crucial. Whether you're a beginner hoping to dive into the world of trading or a seasoned investor aiming to optimize and diversify your portfolio, this handbook offers the insights and methodologies you need. By the end of this guide, readers should have a clear understanding of how the Supertrend Advance Strategy works, its benefits, potential pitfalls, and practical application in various trading scenarios.
Overview of the Supertrend Advance Pullback Strategy:
At its core, the Supertrend Advance Strategy is an evolution of the popular Supertrend Indicator. Designed to generate buy and sell signals in trending markets, the Supertrend Indicator has been a favorite tool for many traders around the world. The Advance Strategy, however, builds upon this foundation by introducing enhanced mechanisms, filters, and methodologies to increase precision and reduce false signals.
1. Basic Concept:
The Supertrend Advance Strategy relies on a combination of price action and volatility to determine the potential trend direction. By assessing the average true range (ATR) in conjunction with specific price points, this strategy aims to highlight the potential starting and ending points of market trends.
2. Methodology:
Unlike the traditional Supertrend Indicator, which primarily focuses on closing prices and ATR, the Advance Strategy integrates other critical market variables, such as volume, momentum oscillators, and perhaps even fundamental data, to validate its signals. This multidimensional approach ensures that the generated signals are more reliable and are less prone to market noise.
3. Benefits:
One of the main benefits of the Supertrend Advance Strategy is its ability to filter out false breakouts and minor price fluctuations, which can often lead to premature exits or entries in the market. By waiting for a confluence of factors to align, traders using this advanced strategy can increase their chances of entering or exiting trades at optimal points.
4. Practical Applications:
The Supertrend Advance Strategy can be applied across various timeframes, from intraday trading to swing trading and even long-term investment scenarios. Furthermore, its flexible nature allows it to be tailored to different asset classes, be it stocks, commodities, forex, or cryptocurrencies.
In the subsequent sections of this handbook, we will delve deeper into the intricacies of this strategy, offering step-by-step guidelines on its application, case studies, and tips for maximizing its efficacy in the volatile world of trading.
As you journey through this handbook, we encourage you to approach the Supertrend Advance Strategy with an open mind, testing and tweaking it as per your personal trading style and risk appetite. The ultimate goal is not just to provide you with a new tool but to empower you with a holistic strategy that can enhance your trading endeavors.
2. Getting Started
Navigating the financial markets can be a daunting task without the right tools. This section is dedicated to helping you set up the Supertrend Advance Strategy on one of the most popular charting platforms, TradingView. By following the steps below, you'll be able to integrate this strategy into your charts and start leveraging its insights in no time.
Setting up on TradingView:
TradingView is a web-based platform that offers a wide range of charting tools, social networking, and market data. Before you can apply the Supertrend Advance Strategy, you'll first need a TradingView account. If you haven't set one up yet, here's how:
1. Account Creation:
• Visit TradingView's official website.
• Click on the "Join for free" or "Sign up" button.
• Follow the registration process, providing the necessary details and setting up your login credentials.
2. Navigating the Dashboard:
• Once logged in, you'll be taken to your dashboard. Here, you'll see a variety of tools, including watchlists, alerts, and the main charting window.
• To begin charting, type in the name or ticker of the asset you're interested in the search bar at the top.
3. Configuring Chart Settings:
• Before integrating the Supertrend Advance Strategy, familiarize yourself with the chart settings. This can be accessed by clicking the 'gear' icon on the top right of the chart window.
• Adjust the chart type, time intervals, and other display settings to your preference.
Integrating the Strategy into a Chart:
Now that you're set up on TradingView, it's time to integrate the Supertrend Advance Strategy.
1. Accessing the Pine Script Editor:
• Located at the top-center of your screen, you'll find the "Pine Editor" tab. Click on it.
• This is where custom strategies and indicators are scripted or imported.
2. Loading the Supertrend Advance Strategy Script:
• Depending on whether you have the script or need to find it, there are two paths:
• If you have the script: Copy the Supertrend Advance Strategy script, and then paste it into the Pine Editor.
• If searching for the script: Click on the “Indicators” icon (looks like a flame) at the top of your screen, and then type “Supertrend Advance Strategy” in the search bar. If available, it will show up in the list. Simply click to add it to your chart.
3. Applying the Strategy:
• After pasting or selecting the Supertrend Advance Strategy in the Pine Editor, click on the “Add to Chart” button located at the top of the editor. This will overlay the strategy onto your main chart window.
4. Configuring Strategy Settings:
• Once the strategy is on your chart, you'll notice a small settings ('gear') icon next to its name in the top-left of the chart window. Click on this to access settings.
• Here, you can adjust various parameters of the Supertrend Advance Strategy to better fit your trading style or the specific asset you're analyzing.
5. Interpreting Signals:
• With the strategy applied, you'll now see buy/sell signals represented on your chart. Take time to familiarize yourself with how these look and behave over various timeframes and market conditions.
3. Strategy Overview
What is the Supertrend Advance Strategy?
The Supertrend Advance Strategy is a refined version of the classic Supertrend Indicator, which was developed to aid traders in spotting market trends. The strategy utilizes a combination of data points, including average true range (ATR) and price momentum, to generate buy and sell signals.
In essence, the Supertrend Advance Strategy can be visualized as a line that moves with the price. When the price is above the Supertrend line, it indicates an uptrend and suggests a potential buy position. Conversely, when the price is below the Supertrend line, it hints at a downtrend, suggesting a potential selling point.
Strategy Goals and Objectives:
1. Trend Identification: At the core of the Supertrend Advance Strategy is the goal to efficiently and consistently identify prevailing market trends. By recognizing these trends, traders can position themselves to capitalize on price movements in their favor.
2. Reducing Noise: Financial markets are often inundated with 'noise' - short-term price fluctuations that can mislead traders. The Supertrend Advance Strategy aims to filter out this noise, allowing for clearer decision-making.
3. Enhancing Risk Management: With clear buy and sell signals, traders can set more precise stop-loss and take-profit points. This leads to better risk management and potentially improved profitability.
4. Versatility: While primarily used for trend identification, the strategy can be integrated with other technical tools and indicators to create a comprehensive trading system.
Type of Assets/Markets to Apply the Strategy:
1. Equities: The Supertrend Advance Strategy is highly popular among stock traders. Its ability to capture long-term trends makes it particularly useful for those trading individual stocks or equity indices.
2. Forex: Given the 24-hour nature of the Forex market and its propensity for trends, the Supertrend Advance Strategy is a valuable tool for currency traders.
3. Commodities: Whether it's gold, oil, or agricultural products, commodities often move in extended trends. The strategy can help in identifying and capitalizing on these movements.
4. Cryptocurrencies: The volatile nature of cryptocurrencies means they can have pronounced trends. The Supertrend Advance Strategy can aid crypto traders in navigating these often tumultuous waters.
5. Futures & Options: Traders and investors in derivative markets can utilize the strategy to make more informed decisions about contract entries and exits.
It's important to note that while the Supertrend Advance Strategy can be applied across various assets and markets, its effectiveness might vary based on market conditions, timeframe, and the specific characteristics of the asset in question. As always, it's recommended to use the strategy in conjunction with other analytical tools and to backtest its effectiveness in specific scenarios before committing to trades.
4. Input Settings
Understanding and correctly configuring input settings is crucial for optimizing the Supertrend Advance Strategy for any specific market or asset. These settings, when tweaked correctly, can drastically impact the strategy's performance.
Grouping Inputs:
Before diving into individual input settings, it's important to group similar inputs. Grouping can simplify the user interface, making it easier to adjust settings related to a specific function or indicator.
Strategy Choice:
This input allows traders to select from various strategies that incorporate the Supertrend indicator. Options might include "Supertrend with RSI," "Supertrend with MACD," etc. By choosing a strategy, the associated input settings for that strategy become available.
Supertrend Settings:
1. Multiplier: Typically, a default value of 3 is used. This multiplier is used in the ATR calculation. Increasing it makes the Supertrend line further from prices, while decreasing it brings the line closer.
2. Period: The number of bars used in the ATR calculation. A common default is 7.
EMA Settings (Exponential Moving Average):
1. Period: Defines the number of previous bars used to calculate the EMA. Common periods are 9, 21, 50, and 200.
2. Source: Allows traders to choose which price (Open, Close, High, Low) to use in the EMA calculation.
RSI Settings (Relative Strength Index):
1. Length: Determines how many periods are used for RSI calculation. The standard setting is 14.
2. Overbought Level: The threshold at which the asset is considered overbought, typically set at 70.
3. Oversold Level: The threshold at which the asset is considered oversold, often at 30.
MACD Settings (Moving Average Convergence Divergence):
1. Short Period: The shorter EMA, usually set to 12.
2. Long Period: The longer EMA, commonly set to 26.
3. Signal Period: Defines the EMA of the MACD line, typically set at 9.
CCI Settings (Commodity Channel Index):
1. Period: The number of bars used in the CCI calculation, often set to 20.
2. Overbought Level: Typically set at +100, denoting overbought conditions.
3. Oversold Level: Usually set at -100, indicating oversold conditions.
SL/TP Settings (Stop Loss/Take Profit):
1. SL Multiplier: Defines the multiplier for the average true range (ATR) to set the stop loss.
2. TP Multiplier: Defines the multiplier for the average true range (ATR) to set the take profit.
Filtering Conditions:
This section allows traders to set conditions to filter out certain signals. For example, one might only want to take buy signals when the RSI is below 30, ensuring they buy during oversold conditions.
Trade Direction and Backtest Period:
1. Trade Direction: Allows traders to specify whether they want to take long trades, short trades, or both.
2. Backtest Period: Specifies the time range for backtesting the strategy. Traders can choose from options like 'Last 6 months,' 'Last 1 year,' etc.
It's essential to remember that while default settings are provided for many of these tools, optimal settings can vary based on the market, timeframe, and trading style. Always backtest new settings on historical data to gauge their potential efficacy.
5. Understanding Strategy Conditions
Developing an understanding of the conditions set within a trading strategy is essential for traders to maximize its potential. Here, we delve deep into the logic behind these conditions, using the Supertrend Advance Strategy as our focal point.
Basic Logic Behind Conditions:
Every strategy is built around a set of conditions that provide buy or sell signals. The conditions are based on mathematical or statistical methods and are rooted in the study of historical price data. The fundamental idea is to recognize patterns or behaviors that have been profitable in the past and might be profitable in the future.
Buy and Sell Conditions:
1. Buy Conditions: Usually formulated around bullish signals or indicators suggesting upward price momentum.
2. Sell Conditions: Centered on bearish signals or indicators indicating downward price momentum.
Simple Strategy:
The simple strategy could involve using just the Supertrend indicator. Here:
• Buy: When price closes above the Supertrend line.
• Sell: When price closes below the Supertrend line.
Pullback Strategy:
This strategy capitalizes on price retracements:
• Buy: When the price retraces to the Supertrend line after a bullish signal and is supported by another bullish indicator.
• Sell: When the price retraces to the Supertrend line after a bearish signal and is confirmed by another bearish indicator.
Indicators Used:
EMA (Exponential Moving Average):
• Logic: EMA gives more weight to recent prices, making it more responsive to current price movements. A shorter-period EMA crossing above a longer-period EMA can be a bullish sign, while the opposite is bearish.
RSI (Relative Strength Index):
• Logic: RSI measures the magnitude of recent price changes to analyze overbought or oversold conditions. Values above 70 are typically considered overbought, and values below 30 are considered oversold.
MACD (Moving Average Convergence Divergence):
• Logic: MACD assesses the relationship between two EMAs of a security’s price. The MACD line crossing above the signal line can be a bullish signal, while crossing below can be bearish.
CCI (Commodity Channel Index):
• Logic: CCI compares a security's average price change with its average price variation. A CCI value above +100 may mean the price is overbought, while below -100 might signify an oversold condition.
And others...
As the strategy expands or contracts, more indicators might be added or removed. The crucial point is to understand the core logic behind each, ensuring they align with the strategy's objectives.
Logic Behind Each Indicator:
1. EMA: Emphasizes recent price movements; provides dynamic support and resistance levels.
2. RSI: Indicates overbought and oversold conditions based on recent price changes.
3. MACD: Showcases momentum and direction of a trend by comparing two EMAs.
4. CCI: Measures the difference between a security's price change and its average price change.
Understanding strategy conditions is not just about knowing when to buy or sell but also about comprehending the underlying market dynamics that those conditions represent. As you familiarize yourself with each condition and indicator, you'll be better prepared to adapt and evolve with the ever-changing financial markets.
6. Trade Execution and Management
Trade execution and management are crucial aspects of any trading strategy. Efficient execution can significantly impact profitability, while effective management can preserve capital during adverse market conditions. In this section, we'll explore the nuances of position entry, exit strategies, and various Stop Loss (SL) and Take Profit (TP) methodologies within the Supertrend Advance Strategy.
Position Entry:
Effective trade entry revolves around:
1. Timing: Enter at a point where the risk-reward ratio is favorable. This often corresponds to confirmatory signals from multiple indicators.
2. Volume Analysis: Ensure there's adequate volume to support the movement. Volume can validate the strength of a signal.
3. Confirmation: Use multiple indicators or chart patterns to confirm the entry point. For instance, a buy signal from the Supertrend indicator can be confirmed with a bullish MACD crossover.
Position Exit Strategies:
A successful exit strategy will lock in profits and minimize losses. Here are some strategies:
1. Fixed Time Exit: Exiting after a predetermined period.
2. Percentage-based Profit Target: Exiting after a certain percentage gain.
3. Indicator-based Exit: Exiting when an indicator gives an opposing signal.
Percentage-based SL/TP:
• Stop Loss (SL): Set a fixed percentage below the entry price to limit potential losses.
• Example: A 2% SL on an entry at $100 would trigger a sell at $98.
• Take Profit (TP): Set a fixed percentage above the entry price to lock in gains.
• Example: A 5% TP on an entry at $100 would trigger a sell at $105.
Supertrend-based SL/TP:
• Stop Loss (SL): Position the SL at the Supertrend line. If the price breaches this line, it could indicate a trend reversal.
• Take Profit (TP): One could set the TP at a point where the Supertrend line flattens or turns, indicating a possible slowdown in momentum.
Swing high/low-based SL/TP:
• Stop Loss (SL): For a long position, set the SL just below the recent swing low. For a short position, set it just above the recent swing high.
• Take Profit (TP): For a long position, set the TP near a recent swing high or resistance. For a short position, near a swing low or support.
And other methods...
1. Trailing Stop Loss: This dynamic SL adjusts with the price movement, locking in profits as the trade moves in your favor.
2. Multiple Take Profits: Divide the position into segments and set multiple TP levels, securing profits in stages.
3. Opposite Signal Exit: Exit when another reliable indicator gives an opposite signal.
Trade execution and management are as much an art as they are a science. They require a blend of analytical skill, discipline, and intuition. Regularly reviewing and refining your strategies, especially in light of changing market conditions, is crucial to maintaining consistent trading performance.
7. Visual Representations
Visual tools are essential for traders, as they simplify complex data into an easily interpretable format. Properly analyzing and understanding the plots on a chart can provide actionable insights and a more intuitive grasp of market conditions. In this section, we’ll delve into various visual representations used in the Supertrend Advance Strategy and their significance.
Understanding Plots on the Chart:
Charts are the primary visual aids for traders. The arrangement of data points, lines, and colors on them tell a story about the market's past, present, and potential future moves.
1. Data Points: These represent individual price actions over a specific timeframe. For instance, a daily chart will have data points showing the opening, closing, high, and low prices for each day.
2. Colors: Used to indicate the nature of price movement. Commonly, green is used for bullish (upward) moves and red for bearish (downward) moves.
Trend Lines:
Trend lines are straight lines drawn on a chart that connect a series of price points. Their significance:
1. Uptrend Line: Drawn along the lows, representing support. A break below might indicate a trend reversal.
2. Downtrend Line: Drawn along the highs, indicating resistance. A break above might suggest the start of a bullish trend.
Filled Areas:
These represent a range between two values on a chart, usually shaded or colored. For instance:
1. Bollinger Bands: The area between the upper and lower band is filled, giving a visual representation of volatility.
2. Volume Profile: Can show a filled area representing the amount of trading activity at different price levels.
Stop Loss and Take Profit Lines:
These are horizontal lines representing pre-determined exit points for trades.
1. Stop Loss Line: Indicates the level at which a trade will be automatically closed to limit losses. Positioned according to the trader's risk tolerance.
2. Take Profit Line: Denotes the target level to lock in profits. Set according to potential resistance (for long trades) or support (for short trades) or other technical factors.
Trailing Stop Lines:
A trailing stop is a dynamic form of stop loss that moves with the price. On a chart:
1. For Long Trades: Starts below the entry price and moves up with the price but remains static if the price falls, ensuring profits are locked in.
2. For Short Trades: Starts above the entry price and moves down with the price but remains static if the price rises.
Visual representations offer traders a clear, organized view of market dynamics. Familiarity with these tools ensures that traders can quickly and accurately interpret chart data, leading to more informed decision-making. Always ensure that the visual aids used resonate with your trading style and strategy for the best results.
8. Backtesting
Backtesting is a fundamental process in strategy development, enabling traders to evaluate the efficacy of their strategy using historical data. It provides a snapshot of how the strategy would have performed in past market conditions, offering insights into its potential strengths and vulnerabilities. In this section, we'll explore the intricacies of setting up and analyzing backtest results and the caveats one must be aware of.
Setting Up Backtest Period:
1. Duration: Determine the timeframe for the backtest. It should be long enough to capture various market conditions (bullish, bearish, sideways). For instance, if you're testing a daily strategy, consider a period of several years.
2. Data Quality: Ensure the data source is reliable, offering high-resolution and clean data. This is vital to get accurate backtest results.
3. Segmentation: Instead of a continuous period, sometimes it's helpful to backtest over distinct market phases, like a particular bear or bull market, to see how the strategy holds up in different environments.
Analyzing Backtest Results:
1. Performance Metrics: Examine metrics like the total return, annualized return, maximum drawdown, Sharpe ratio, and others to gauge the strategy's efficiency.
2. Win Rate: It's the ratio of winning trades to total trades. A high win rate doesn't always signify a good strategy; it should be evaluated in conjunction with other metrics.
3. Risk/Reward: Understand the average profit versus the average loss per trade. A strategy might have a low win rate but still be profitable if the average gain far exceeds the average loss.
4. Drawdown Analysis: Review the periods of losses the strategy could incur and how long it takes, on average, to recover.
9. Tips and Best Practices
Successful trading requires more than just knowing how a strategy works. It necessitates an understanding of when to apply it, how to adjust it to varying market conditions, and the wisdom to recognize and avoid common pitfalls. This section offers insightful tips and best practices to enhance the application of the Supertrend Advance Strategy.
When to Use the Strategy:
1. Market Conditions: Ideally, employ the Supertrend Advance Strategy during trending market conditions. This strategy thrives when there are clear upward or downward trends. It might be less effective during consolidative or sideways markets.
2. News Events: Be cautious around significant news events, as they can cause extreme volatility. It might be wise to avoid trading immediately before and after high-impact news.
3. Liquidity: Ensure you are trading in assets/markets with sufficient liquidity. High liquidity ensures that the price movements are more reflective of genuine market sentiment and not due to thin volume.
Adjusting Settings for Different Markets/Timeframes:
1. Markets: Each market (stocks, forex, commodities) has its own characteristics. It's essential to adjust the strategy's parameters to align with the market's volatility and liquidity.
2. Timeframes: Shorter timeframes (like 1-minute or 5-minute charts) tend to have more noise. You might need to adjust the settings to filter out false signals. Conversely, for longer timeframes (like daily or weekly charts), you might need to be more responsive to genuine trend changes.
3. Customization: Regularly review and tweak the strategy's settings. Periodic adjustments can ensure the strategy remains optimized for the current market conditions.
10. Frequently Asked Questions (FAQs)
Given the complexities and nuances of the Supertrend Advance Strategy, it's only natural for traders, both new and seasoned, to have questions. This section addresses some of the most commonly asked questions regarding the strategy.
1. What exactly is the Supertrend Advance Strategy?
The Supertrend Advance Strategy is an evolved version of the traditional Supertrend indicator. It's designed to provide clearer buy and sell signals by incorporating additional indicators like EMA, RSI, MACD, CCI, etc. The strategy aims to capitalize on market trends while minimizing false signals.
2. Can I use the Supertrend Advance Strategy for all asset types?
Yes, the strategy can be applied to various asset types like stocks, forex, commodities, and cryptocurrencies. However, it's crucial to adjust the settings accordingly to suit the specific characteristics and volatility of each asset type.
3. Is this strategy suitable for day trading?
Absolutely! The Supertrend Advance Strategy can be adjusted to suit various timeframes, making it versatile for both day trading and long-term trading. Remember to fine-tune the settings to align with the timeframe you're trading on.
4. How do I deal with false signals?
No strategy is immune to false signals. However, by combining the Supertrend with other indicators and adhering to strict risk management protocols, you can minimize the impact of false signals. Always use stop-loss orders and consider filtering trades with additional confirmation signals.
5. Do I need any prior trading experience to use this strategy?
While the Supertrend Advance Strategy is designed to be user-friendly, having a foundational understanding of trading and market analysis can greatly enhance your ability to employ the strategy effectively. If you're a beginner, consider pairing the strategy with further education and practice on demo accounts.
6. How often should I review and adjust the strategy settings?
There's no one-size-fits-all answer. Some traders adjust settings weekly, while others might do it monthly. The key is to remain responsive to changing market conditions. Regular backtesting can give insights into potential required adjustments.
7. Can the Supertrend Advance Strategy be automated?
Yes, many traders use algorithmic trading platforms to automate their strategies, including the Supertrend Advance Strategy. However, always monitor automated systems regularly to ensure they're operating as intended.
8. Are there any markets or conditions where the strategy shouldn't be used?
The strategy might generate more false signals in markets that are consolidative or range-bound. During significant news events or times of unexpected high volatility, it's advisable to tread with caution or stay out of the market.
9. How important is backtesting with this strategy?
Backtesting is crucial as it allows traders to understand how the strategy would have performed in the past, offering insights into potential profitability and areas of improvement. Always backtest any new setting or tweak before applying it to live trades.
10. What if the strategy isn't working for me?
No strategy guarantees consistent profits. If it's not working for you, consider reviewing your settings, seeking expert advice, or complementing the Supertrend Advance Strategy with other analysis methods. Remember, continuous learning and adaptation are the keys to trading success.
Other comments
Value of combining several indicators in this script and how they work together
Diversification of Signals: Just as diversifying an investment portfolio can reduce risk, using multiple indicators can offer varied perspectives on potential price movements. Each indicator can capture a different facet of the market, ensuring that traders are not overly reliant on a single data point.
Confirmation & Reduced False Signals: A common challenge with many indicators is the potential for false signals. By requiring confirmation from multiple indicators before acting, the chances of acting on a false signal can be significantly reduced.
Flexibility Across Market Conditions: Different indicators might perform better under different market conditions. For example, while moving averages might excel in trending markets, oscillators like RSI might be more useful during sideways or range-bound conditions. A mashup strategy can potentially adapt better to varying market scenarios.
Comprehensive Analysis: With multiple indicators, traders can gauge trend strength, momentum, volatility, and potential market reversals all at once, providing a holistic view of the market.
How do the different indicators in the Supertrend Advance Strategy work together?
Supertrend: This is primarily a trend-following indicator. It provides traders with buy and sell signals based on the volatility of the price. When combined with other indicators, it can filter out noise and give more weight to strong, confirmed trends.
EMA (Exponential Moving Average): EMA gives more weight to recent price data. It can be used to identify the direction and strength of a trend. When the price is above the EMA, it's generally considered bullish, and vice versa.
RSI (Relative Strength Index): An oscillator that measures the magnitude of recent price changes to evaluate overbought or oversold conditions. By cross-referencing with other indicators like EMA or MACD, traders can spot potential reversals or confirmations of a trend.
MACD (Moving Average Convergence Divergence): This indicator identifies changes in the strength, direction, momentum, and duration of a trend in a stock's price. When the MACD line crosses above the signal line, it can be a bullish sign, and when it crosses below, it can be bearish. Pairing MACD with Supertrend can provide dual confirmation of a trend.
CCI (Commodity Channel Index): Initially developed for commodities, CCI can indicate overbought or oversold conditions. It can be used in conjunction with other indicators to determine entry and exit points.
In essence, the synergy of these indicators provides a balanced, comprehensive approach to trading. Each indicator offers its unique lens into market conditions, and when they align, it can be a powerful indication of a trading opportunity. This combination not only reduces the potential drawbacks of each individual indicator but leverages their strengths, aiming for more consistent and informed trading decisions.
Backtesting and Default Settings
• This indicator has been optimized to be applied for 1 hour-charts. However, the underlying principles of this strategy are supply and demand in the financial markets and the strategy can be applied to all timeframes. Daytraders can use the 1min- or 5min charts, swing-traders can use the daily charts.
• This strategy has been designed to identify the most promising, highest probability entries and trades for each stock or other financial security.
• The combination of the qualifiers results in a highly selective strategy which only considers the most promising swing-trading entries. As a result, you will normally only find a low number of trades for each stock or other financial security per year in case you apply this strategy for the daily charts. Shorter timeframes will result in a higher number of trades / year.
• Consequently, traders need to apply this strategy for a full watchlist rather than just one financial security.
• Default properties: RSI on (length 14, RSI buy level 50, sell level 50), EMA, RSI, MACD on, type of strategy pullback, SL/TP type: ATR (length 10, factor 3), trade direction both, quantity 5, take profit swing hl 5.1, highest / lowest lookback 2, enable ATR trail (ATR length 10, SL ATR multiplier 1.4, TP multiplier 2.1, lookback = 4, trade direction = both).
Smoothed Heikin Ashi Trend on Chart - TraderHalai BACKTESTSmoothed Heikin Ashi Trend on chart - Backtest
This is a backtest of the Smoothed Heikin Ashi Trend indicator, which computes the reverse candle close price required to flip a Heikin Ashi trend from red to green and vice versa. The original indicator can be found in the scripts section of my profile.
This particular back test uses this indicator with a Trend following paradigm with a percentage-based stop loss.
Note, that backtesting performance is not always indicative of future performance, but it does provide some basis for further development and walk-forward / live testing.
Testing was performed on Bitcoin , as this is a primary target market for me to use this kind of strategy.
Sample Backtesting results as of 10th June 2022:
Backtesting parameters:
Position size: 10% of equity
Long stop: 1% below entry
Short stop: 1% above entry
Repainting: Off
Smoothing: SMA
Period: 10
8 Hour:
Number of Trades: 1046
Gross Return: 249.27 %
CAGR Return: 14.04 %
Max Drawdown: 7.9 %
Win percentage: 28.01 %
Profit Factor (Expectancy): 2.019
Average Loss: 0.33 %
Average Win: 1.69 %
Average Time for Loss: 1 day
Average Time for Win: 5.33 days
1 Day:
Number of Trades: 429
Gross Return: 458.4 %
CAGR Return: 15.76 %
Max Drawdown: 6.37 %
Profit Factor (Expectancy): 2.804
Average Loss: 0.8 %
Average Win: 7.2 %
Average Time for Loss: 3 days
Average Time for Win: 16 days
5 Day:
Number of Trades: 69
Gross Return: 1614.9 %
CAGR Return: 26.7 %
Max Drawdown: 5.7 %
Profit Factor (Expectancy): 10.451
Average Loss: 3.64 %
Average Win: 81.17 %
Average Time for Loss: 15 days
Average Time for Win: 85 days
Analysis:
The strategy is typical amongst trend following strategies with a less regular win rate, but where profits are more significant than losses. Most of the losses are in sideways, low volatility markets. This strategy performs better on higher timeframes, where it shows a positive expectancy of the strategy.
The average win was positively impacted by Bitcoin’s earlier smaller market cap, as the percentage wins earlier were higher.
Overall the strategy shows potential for further development and may be suitable for walk-forward testing and out of sample analysis to be considered for a demo trading account.
Note in an actual trading setup, you may wish to use this with volatility filters, combined with support resistance zones for a better setup.
As always, this post/indicator/strategy is not financial advice, and please do your due diligence before trading this live.
Original indicator links:
On chart version -
Oscillator version -
Update - 27/06/2022
Unfortunately, It appears that the original script had been taken down due to auto-moderation because of concerns with no slippage / commission. I have since adjusted the backtest, and re-uploaded to include the following to address these concerns, and show that I am genuinely trying to give back to the community and not mislead anyone:
1) Include commission of 0.1% - to match Binance's maker fees prior to moving to a fee-less model.
2) Include slippage of 10 ticks (This is a realistic slippage figure from searching online for most crypto exchanges)
3) Adjust account balance to 10,000 - since most of us are not millionaires.
The rest of the backtesting parameters are comparable to previous results:
Backtesting parameters:
Initial capital: 10000 dollars
Position size: 10% of equity
Long stop: 2% below entry
Short stop: 2% above entry
Repainting: Off
Smoothing: SMA
Period: 10
Slippage: 10 ticks
Commission: 0.1%
This script still remains to shows viability / profitablity on higher term timeframes (with slightly higher drawdown), and I have included the backtest report below to document my findings:
8 Hour:
Number of Trades: 1082
Gross Return: 233.02%
CAGR Return: 14.04 %
Max Drawdown: 7.9 %
Win percentage: 25.6%
Profit Factor (Expectancy): 1.627
Average Loss: 0.46 %
Average Win: 2.18 %
Average Time for Loss: 1.33 day
Average Time for Win: 7.33 days
Once again, please do your own research and due dillegence before trading this live. This post is for education and information purposes only, and should not be taken as financial advice.
GKD-BT Full Giga Kaleidoscope Backtest [Loxx]Giga Kaleidoscope GKD-BT Full Giga Kaleidoscope Backtest is a Backtesting module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-BT Full Giga Kaleidoscope Backtest
The Full Giga Kaleidoscope Backtest module enables users to backtest Full GKD Long and Short signals, allowing the creation of a comprehensive NNFX trading system consisting of two confirmation indicators, a baseline, a measure of volatility/volume, and continuations.
This module offers two types of backtests: Trading and Full. The Trading backtest allows users to evaluate individual Long and Short trades one by one. On the other hand, the Full backtest enables the analysis of Longs or Shorts separately by toggling between them in the settings, providing insights into the results for each signal type. The Trading backtest simulates actual trading conditions, while the Full backtest evaluates all signals regardless of their Long or Short nature.
Additionally, the backtest module allows testing with 1 to 3 take profits and 1 stop loss. The Trading backtest supports 1 to 3 take profits, while the Full backtest is limited to 1 take profit. The Trading backtest also includes a trailing take profit feature.
Regarding the percentage of trade removed at each take profit, the backtest module incorporates the following predefined values:
Take profit 1: 50% of the trade is removed.
Take profit 2: 25% of the trade is removed.
Take profit 3: 25% of the trade is removed.
Stop loss: 100% of the trade is removed.
After achieving each take profit, the stop loss level is adjusted accordingly. When take profit 1 is reached, the stop loss is moved to the entry point. Similarly, when take profit 2 is reached, the stop loss is shifted to take profit 1. The trailing take profit feature comes into effect after take profit 2 or take profit 3, depending on the number of take profits selected in the settings. The trailing take profit is always activated on the final take profit when 2 or more take profits are chosen.
The backtest module also provides the option to restrict testing to a specific date range, allowing for simulated forward testing using past data. Additionally, users can choose to display or hide a trading panel that provides relevant information about the backtest, statistics, and the current trade. It is also possible to activate alerts and toggle sections of the trading panel on or off. Historical take profit and stop loss levels are displayed as overlaid horizontal lines on the chart for reference.
To utilize this strategy, follow these steps:
1. GKD-B Baseline Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-B Baseline module into the GKD-BT Full Giga Kaleidoscope Backtest module setting named "Import GKD-B Baseline."
2. GKD-V Volatility/Volume Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-V Volatility/Volume module into the GKD-BT Full Giga Kaleidoscope Backtest module setting named "Import GKD-V Volatility/Volume."
3. Adjust the "Confirmation 1 Type" in the GKD-C Confirmation Indicator to "GKD New."
4. GKD-C Confirmation 1 Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-C Confirmation 1 module into the GKD-BT Full Giga Kaleidoscope Backtest module setting named "Import GKD-C Confirmation 1."
5. Adjust the "Confirmation 2 Type" in the GKD-C Confirmation 2 Indicator to "GKD New."
6. GKD-C Confirmation 2 Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-C Confirmation 2 module into the GKD-BT Full Giga Kaleidoscope Backtest module setting named "Import GKD-C Confirmation 2."
7. Adjust the "Confirmation Type" in the GKD-C Continuation Indicator to "GKD New."
8. GKD-C Continuation Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-C Continuation module into the GKD-BT Full Giga Kaleidoscope Backtest module setting named "Import GKD-C Confirmation."
The GKD system utilizes volatility-based take profits and stop losses, where each take profit and stop loss is calculated as a multiple of volatility. Users have the flexibility to adjust the multiplier values in the settings to suit their preferences.
In a future update, the Full Giga Kaleidoscope Backtest module will include the option to incorporate a GKD-E Exit indicator, completing the full trading strategy.
█ Full Giga Kaleidoscope Backtest Entries
Within this module, there are ten distinct types of entries available, which are outlined below:
Standard Entry
1-Candle Standard Entry
Baseline Entry
1-Candle Baseline Entry
Volatility/Volume Entry
1-Candle Volatility/Volume Entry
Confirmation 2 Entry
1-Candle Confirmation 2 Entry
PullBack Entry
Continuation Entry
Each of these entry types can generate either long or short signals, resulting in a total of 20 signal variations. The user has the flexibility to enable or disable specific entry types and choose which qualifying rules within each entry type are applied to price to determine the final long or short signal.
The following section provides an overview of the various entry types and their corresponding qualifying rules:
Standard Entry
1. GKD-C Confirmation gives signal
2. Baseline agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Confirmation 2 agrees
6. Volatility/Volume agrees
1-Candle Standard Entry
1a. GKD-C Confirmation gives signal
2a. Baseline agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
Next Candle
1b. Price retraced
2b. Baseline agrees
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Volatility/Volume agrees
Baseline Entry
1. GKD-B Basline gives signal
2. Confirmation 1 agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Confirmation 2 agrees
6. Volatility/Volume agrees
7. Confirmation 1 signal was less than 'Maximum Allowable PSBC Bars Back' prior
1-Candle Baseline Entry
1a. GKD-B Baseline gives signal
2a. Confirmation 1 agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
5a. Confirmation 1 signal was less than 'Maximum Allowable PSBC Bars Back' prior
Next Candle
1b. Price retraced
2b. Baseline agrees
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Volatility/Volume agrees
Volatility/Volume Entry
1. GKD-V Volatility/Volume gives signal
2. Confirmation 1 agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Confirmation 2 agrees
6. Baseline agrees
7. Confirmation 1 signal was less than 7 candles prior
1-Candle Volatility/Volume Entry
1a. GKD-V Volatility/Volume gives signal
2a. Confirmation 1 agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
5a. Confirmation 1 signal was less than 'Maximum Allowable PSVVC Bars Back' prior
Next Candle
1b. Price retraced
2b. Volatility/Volume agrees
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Baseline agrees
Confirmation 2 Entry
1. GKD-C Confirmation 2 gives signal
2. Confirmation 1 agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Volatility/Volume agrees
6. Baseline agrees
7. Confirmation 1 signal was less than 7 candles prior
1-Candle Confirmation 2 Entry
1a. GKD-C Confirmation 2 gives signal
2a. Confirmation 1 agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
5a. Confirmation 1 signal was less than 'Maximum Allowable PSC2C Bars Back' prior
Next Candle
1b. Price retraced
2b. Confirmation 2 agrees
3b. Confirmation 1 agrees
4b. Volatility/Volume agrees
5b. Baseline agrees
PullBack Entry
1a. GKD-B Baseline gives signal
2a. Confirmation 1 agrees
3a. Price is beyond 1.0x Volatility of Baseline
Next Candle
1b. Price inside Goldie Locks Zone Minimum
2b. Price inside Goldie Locks Zone Maximum
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Volatility/Volume agrees
Continuation Entry
1. Standard Entry, 1-Candle Standard Entry, Baseline Entry, 1-Candle Baseline Entry, Volatility/Volume Entry, 1-Candle Volatility/Volume Entry, Confirmation 2 Entry, 1-Candle Confirmation 2 Entry, or Pullback entry triggered previously
2. Baseline hasn't crossed since entry signal trigger
4. Confirmation 1 agrees
5. Baseline agrees
6. Confirmation 2 agrees
█ Volatility Types Included
This module includes 17 types of volatility:
Close-to-Close
Parkinson
Garman-Klass
Rogers-Satchell
Yang-Zhang
Garman-Klass-Yang-Zhang
Exponential Weighted Moving Average
Standard Deviation of Log Returns
Pseudo GARCH(2,2)
Average True Range
True Range Double
Standard Deviation
Adaptive Deviation
Median Absolute Deviation
Efficiency-Ratio Adaptive ATR
Mean Absolute Deviation
Static Percent
Close-to-Close
Close-to-Close volatility is a classic and widely used volatility measure, sometimes referred to as historical volatility.
Volatility is an indicator of the speed of a stock price change. A stock with high volatility is one where the price changes rapidly and with a larger amplitude. The more volatile a stock is, the riskier it is.
Close-to-close historical volatility is calculated using only a stock's closing prices. It is the simplest volatility estimator. However, in many cases, it is not precise enough. Stock prices could jump significantly during a trading session and return to the opening value at the end. That means that a considerable amount of price information is not taken into account by close-to-close volatility.
Despite its drawbacks, Close-to-Close volatility is still useful in cases where the instrument doesn't have intraday prices. For example, mutual funds calculate their net asset values daily or weekly, and thus their prices are not suitable for more sophisticated volatility estimators.
Parkinson
Parkinson volatility is a volatility measure that uses the stock’s high and low price of the day.
The main difference between regular volatility and Parkinson volatility is that the latter uses high and low prices for a day, rather than only the closing price. This is useful as close-to-close prices could show little difference while large price movements could have occurred during the day. Thus, Parkinson's volatility is considered more precise and requires less data for calculation than close-to-close volatility.
One drawback of this estimator is that it doesn't take into account price movements after the market closes. Hence, it systematically undervalues volatility. This drawback is addressed in the Garman-Klass volatility estimator.
Garman-Klass
Garman-Klass is a volatility estimator that incorporates open, low, high, and close prices of a security.
Garman-Klass volatility extends Parkinson's volatility by taking into account the opening and closing prices. As markets are most active during the opening and closing of a trading session, it makes volatility estimation more accurate.
Garman and Klass also assumed that the process of price change follows a continuous diffusion process (Geometric Brownian motion). However, this assumption has several drawbacks. The method is not robust for opening jumps in price and trend movements.
Despite its drawbacks, the Garman-Klass estimator is still more effective than the basic formula since it takes into account not only the price at the beginning and end of the time interval but also intraday price extremes.
Researchers Rogers and Satchell have proposed a more efficient method for assessing historical volatility that takes into account price trends. See Rogers-Satchell Volatility for more detail.
Rogers-Satchell
Rogers-Satchell is an estimator for measuring the volatility of securities with an average return not equal to zero.
Unlike Parkinson and Garman-Klass estimators, Rogers-Satchell incorporates a drift term (mean return not equal to zero). As a result, it provides better volatility estimation when the underlying is trending.
The main disadvantage of this method is that it does not take into account price movements between trading sessions. This leads to an underestimation of volatility since price jumps periodically occur in the market precisely at the moments between sessions.
A more comprehensive estimator that also considers the gaps between sessions was developed based on the Rogers-Satchel formula in the 2000s by Yang-Zhang. See Yang Zhang Volatility for more detail.
Yang-Zhang
Yang Zhang is a historical volatility estimator that handles both opening jumps and the drift and has a minimum estimation error.
Yang-Zhang volatility can be thought of as a combination of the overnight (close-to-open volatility) and a weighted average of the Rogers-Satchell volatility and the day’s open-to-close volatility. It is considered to be 14 times more efficient than the close-to-close estimator.
Garman-Klass-Yang-Zhang
Garman-Klass-Yang-Zhang (GKYZ) volatility estimator incorporates the returns of open, high, low, and closing prices in its calculation.
GKYZ volatility estimator takes into account overnight jumps but not the trend, i.e., it assumes that the underlying asset follows a Geometric Brownian Motion (GBM) process with zero drift. Therefore, the GKYZ volatility estimator tends to overestimate the volatility when the drift is different from zero. However, for a GBM process, this estimator is eight times more efficient than the close-to-close volatility estimator.
Exponential Weighted Moving Average
The Exponentially Weighted Moving Average (EWMA) is a quantitative or statistical measure used to model or describe a time series. The EWMA is widely used in finance, with the main applications being technical analysis and volatility modeling.
The moving average is designed such that older observations are given lower weights. The weights decrease exponentially as the data point gets older – hence the name exponentially weighted.
The only decision a user of the EWMA must make is the parameter lambda. The parameter decides how important the current observation is in the calculation of the EWMA. The higher the value of lambda, the more closely the EWMA tracks the original time series.
Standard Deviation of Log Returns
This is the simplest calculation of volatility. It's the standard deviation of ln(close/close(1)).
Pseudo GARCH(2,2)
This is calculated using a short- and long-run mean of variance multiplied by ?.
?avg(var;M) + (1 ? ?) avg(var;N) = 2?var/(M+1-(M-1)L) + 2(1-?)var/(M+1-(M-1)L)
Solving for ? can be done by minimizing the mean squared error of estimation; that is, regressing L^-1var - avg(var; N) against avg(var; M) - avg(var; N) and using the resulting beta estimate as ?.
Average True Range
The average true range (ATR) is a technical analysis indicator, introduced by market technician J. Welles Wilder Jr. in his book New Concepts in Technical Trading Systems, that measures market volatility by decomposing the entire range of an asset price for that period.
The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The ATR is then a moving average, generally using 14 days, of the true ranges.
True Range Double
A special case of ATR that attempts to correct for volatility skew.
Standard Deviation
Standard deviation is a statistic that measures the dispersion of a dataset relative to its mean and is calculated as the square root of the variance. The standard deviation is calculated as the square root of variance by determining each data point's deviation relative to the mean. If the data points are further from the mean, there is a higher deviation within the data set; thus, the more spread out the data, the higher the standard deviation.
Adaptive Deviation
By definition, the Standard Deviation (STD, also represented by the Greek letter sigma ? or the Latin letter s) is a measure that is used to quantify the amount of variation or dispersion of a set of data values. In technical analysis, we usually use it to measure the level of current volatility.
Standard Deviation is based on Simple Moving Average calculation for mean value. This version of standard deviation uses the properties of EMA to calculate what can be called a new type of deviation, and since it is based on EMA, we can call it EMA deviation. Additionally, Perry Kaufman's efficiency ratio is used to make it adaptive (since all EMA type calculations are nearly perfect for adapting).
The difference when compared to the standard is significant--not just because of EMA usage, but the efficiency ratio makes it a "bit more logical" in very volatile market conditions.
Median Absolute Deviation
The median absolute deviation is a measure of statistical dispersion. Moreover, the MAD is a robust statistic, being more resilient to outliers in a data set than the standard deviation. In the standard deviation, the distances from the mean are squared, so large deviations are weighted more heavily, and thus outliers can heavily influence it. In the MAD, the deviations of a small number of outliers are irrelevant.
Because the MAD is a more robust estimator of scale than the sample variance or standard deviation, it works better with distributions without a mean or variance, such as the Cauchy distribution.
Efficiency-Ratio Adaptive ATR
Average True Range (ATR) is a widely used indicator for many occasions in technical analysis. It is calculated as the RMA of the true range. This version adds a "twist": it uses Perry Kaufman's Efficiency Ratio to calculate adaptive true range.
Mean Absolute Deviation
The mean absolute deviation (MAD) is a measure of variability that indicates the average distance between observations and their mean. MAD uses the original units of the data, which simplifies interpretation. Larger values signify that the data points spread out further from the average. Conversely, lower values correspond to data points bunching closer to it. The mean absolute deviation is also known as the mean deviation and average absolute deviation.
This definition of the mean absolute deviation sounds similar to the standard deviation (SD). While both measure variability, they have different calculations. In recent years, some proponents of MAD have suggested that it replace the SD as the primary measure because it is a simpler concept that better fits real life.
Static Percent
Static Percent allows the user to insert their own constant percent that will then be used to create take profits and stoploss
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v2.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data to A backtest module wherein the various components of the GKD system are combined to create a trading signal.
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Full Giga Kaleidoscope Backtest as shown on the chart above
Baseline: Hull Moving Average as shown on the chart above
Volatility/Volume: Hurst Exponent as shown on the chart above
Confirmation 1: Vorext as shown on the chart above
Confirmation 2: Coppock Curve as shown on the chart above
Continuation: Fisher Transform as shown on the chart above
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD system.
Premium Signal Strategy [BRTLab]🔍 Overview
BRTLab Premium Signal Strategy is a comprehensive multi-indicator trading strategy based on the integration of key technical indicators such as ADX, RSX, CAND, V9, PP, MA, and LVL. The strategy allows users to flexibly adjust the parameters of each indicator to optimize for specific market conditions, making it effective for both trending markets and for identifying reversals and breakouts.
🌟 What makes this strategy unique is its seamless compatibility with the BRT Premium Signals tool, allowing traders not only to receive real-time signals but also to conduct robust backtests. This feature enables users to fine-tune the best parameter settings or even test out their own trading ideas through historical data analysis. The ability to backtest empowers traders to validate strategies before going live, significantly improving the chances of success by offering data-driven insights.
💡 Signal Logic:
ADX
The ADX-based signals reflect the strength of market trends. Bullish or bearish signals are generated when directional indicators (+DI or -DI) show increasing strength relative to one another, indicating the start or continuation of a strong trend.
RSX
These signals focus on divergences within RSI, identifying potential reversals by detecting either classic or hidden divergences when the market is overbought or oversold.
V9
Signals are generated when the price interacts with a dynamic threshold, indicating trend continuation or reversal. Additional filters can be applied to refine these signals further, enhancing the dashboard's overall effectiveness.
CAND
Candlestick-based signals are triggered by key patterns such as bullish or bearish engulfing formations. These signals are cross-checked with other conditions, such as RSI levels and candle stability, making them especially useful for short-term trading.
PP (Pivot Points)
Pivot Point signals reinforce candlestick patterns by aligning with key support or resistance levels, suggesting potential reversals or continuation opportunities at significant price points.
MA (Moving Average)
MA signals help identify trends by analyzing price action relative to a moving average. Optional filters like ADX add an additional layer of validation, ensuring only high-confidence signals are displayed on the dashboard.
LVL (Levels)
These signals are based on shifts in RSI and help traders spot potential breakouts or reversals. The dashboard integrates these signals alongside MA and ADX filters to enhance their accuracy.
📊 Risk Management
This strategy includes built-in risk management features to help minimize losses:
Initial Capital: The user can set the initial capital (default is 10000), adjusting the strategy to their financial goals.
Position Size: Set the position size (default is 1000), allowing better risk management and controlling potential losses.
Stop-Loss: Multiple stop-loss methods are available, including ATR-based, fixed percentage, or prior high/low levels.
Take-Profit: Users can configure take-profit settings (default is 1.3%) to lock in gains while managing risk effectively.
⚠️ RISK DISCLAIMER
Trading involves significant risks, and most day traders experience losses. All content, tools, scripts, and educational materials from BRTLab are provided for informational and educational purposes only. Past performance is not a guarantee of future results. Please ensure you use realistic backtesting settings, including proper account size, commission, and slippage, to reflect market conditions.
⚡ CONCLUSION
We believe that successful trading comes from using indicators as supportive tools rather than relying on them for guaranteed success. The BRTLab Premium Signal Strategy is designed to be a comprehensive, customizable toolset that helps traders understand and interpret technical indicators more effectively.
By leveraging the power of backtesting and indicator optimization, traders can make well-informed decisions and develop a deeper understanding of market dynamics. Use this strategy to build a trading framework that aligns with your personal goals and trading style.
Follow the author’s instructions below to access the BRTLab Premium suite and unlock the full potential of this strategy.
Simple RSI stock Strategy [1D] The "Simple RSI Stock Strategy " is designed to long-term traders. Strategy uses a daily time frame to capitalize on signals generated by the Relative Strength Index (RSI) and the Simple Moving Average (SMA). This strategy is suitable for low-leverage trading environments and focuses on identifying potential buy opportunities when the market is oversold, while incorporating strong risk management with both dynamic and static Stop Loss mechanisms.
This strategy is recommended for use with a relatively small amount of capital and is best applied by diversifying across multiple stocks in a strong uptrend, particularly in the S&P 500 stock market. It is specifically designed for equities, and may not perform well in other markets such as commodities, forex, or cryptocurrencies, where different market dynamics and volatility patterns apply.
Indicators Used in the Strategy:
1. RSI (Relative Strength Index):
- The RSI is a momentum oscillator used to identify overbought and oversold conditions in the market.
- This strategy enters long positions when the RSI drops below the oversold level (default: 30), indicating a potential buying opportunity.
- It focuses on oversold conditions but uses a filter (SMA 200) to ensure trades are only made in the context of an overall uptrend.
2. SMA 200 (Simple Moving Average):
- The 200-period SMA serves as a trend filter, ensuring that trades are only executed when the price is above the SMA, signaling a bullish market.
- This filter helps to avoid entering trades in a downtrend, thereby reducing the risk of holding positions in a declining market.
3. ATR (Average True Range):
- The ATR is used to measure market volatility and is instrumental in setting the Stop Loss.
- By multiplying the ATR value by a custom multiplier (default: 1.5), the strategy dynamically adjusts the Stop Loss level based on market volatility, allowing for flexibility in risk management.
How the Strategy Works:
Entry Signals:
The strategy opens long positions when RSI indicates that the market is oversold (below 30), and the price is above the 200-period SMA. This ensures that the strategy buys into potential market bottoms within the context of a long-term uptrend.
Take Profit Levels:
The strategy defines three distinct Take Profit (TP) levels:
TP 1: A 5% from the entry price.
TP 2: A 10% from the entry price.
TP 3: A 15% from the entry price.
As each TP level is reached, the strategy closes portions of the position to secure profits: 33% of the position is closed at TP 1, 66% at TP 2, and 100% at TP 3.
Visualizing Target Points:
The strategy provides visual feedback by plotting plotshapes at each Take Profit level (TP 1, TP 2, TP 3). This allows traders to easily see the target profit levels on the chart, making it easier to monitor and manage positions as they approach key profit-taking areas.
Stop Loss Mechanism:
The strategy uses a dual Stop Loss system to effectively manage risk:
ATR Trailing Stop: This dynamic Stop Loss adjusts based on the ATR value and trails the price as the position moves in the trader’s favor. If a price reversal occurs and the market begins to trend downward, the trailing stop closes the position, locking in gains or minimizing losses.
Basic Stop Loss: Additionally, a fixed Stop Loss is set at 25%, limiting potential losses. This basic Stop Loss serves as a safeguard, automatically closing the position if the price drops 25% from the entry point. This higher Stop Loss is designed specifically for low-leverage trading, allowing more room for market fluctuations without prematurely closing positions.
to determine the level of stop loss and target point I used a piece of code by RafaelZioni, here is the script from which a piece of code was taken
Together, these mechanisms ensure that the strategy dynamically manages risk while offering robust protection against significant losses in case of sharp market downturns.
The position size has been estimated by me at 75% of the total capital. For optimal capital allocation, a recommended value based on the Kelly Criterion, which is calculated to be 59.13% of the total capital per trade, can also be considered.
Enjoy !
[MT Trader] Backtest template w/ Supertrend Strategy---EN: In this strategy template you will find some functions already pre-programmed to be used in your strategies to speed up the programming process, among them we can highlight the default stop loss and take profit functions, which will help to set easily and quickly, defining the price range in which we want to prevent large losses or protect our profits from unexpected market movements.
🔴 Stop Loss: Among the functions of the stop loss are the 4 most known, first we have the fixed percentage range (%) and price ($), when the price reaches this fixed price will limit the losses of the operation avoiding larger losses, then we have the average true range (ATR), a moving average of true range and X period that can give us good reference points to place our stop loss, finally the last point higher or lower is the most used by traders to place their stop loss.
In addition, the price range between the entry and stop loss can be converted into a trailing stop loss.
🟢 Take Profit: We have 3 options for take profit, just like stop loss, the fixed range of percentage(%) and price($), are available, in addition to this we have the 1:# ratio option, which multiplies by X number the range between the entry and stop loss to use it as take profit, perfect for strategies that use ATR or last high/low point for their strategy.
📈 Heikin Ashi Entrys: The heikin ashi entries are trades that are calculated based on heikin ashi candles but their price is executed in Japanese candles, thus avoiding the false results that occur in heikin candlestick charts, making that in certain cases better results are obtained in the strategies that are executed with this option compared to Japanese candlesticks.
📊 Dashboard: A more visual and organized way to see the results and data needed for our strategy.
Feel free to use this template to program your own strategies, if you find bugs or want to request a new feature let me know in the comments or through my telegram @hvert_mt
__________________________________________________________________________________________________________________________________________________
---ES: En esta plantilla de estrategia podrás encontrar algunas funciones ya pre-programadas para ser usadas en tus estrategias para acelerar procesos de programación, entre ellas podemos destacar las funciones por defecto de stop loss y take profit, que ayudaran a establecer de manera fácil y rápida, definiendo los rango de precio en los que queremos prevenirnos de perdidas grandes o proteger nuestras ganancias de movimientos inesperados del mercado.
🔴 Stop Loss: Entre las funciones del stop loss están las 4 más conocidas, en primer lugar tenemos el rango de porcentaje fijo(%) y el precio($), cuando el precio alcance este precio fijo se limitaran las perdidas de la operación evitando perdidas mas grandes, después tenemos el promedio de rango verdadero(ATR), una media móvil del rango verdadero y X periodo que nos puede dar buenos puntos de referencia para colocar nuestro stop loss, por ultimo el ultimo punto mas alto o mas bajo es de los mas usados por los traders para colocar su stop loss.
Adicional a esto, el rango de precio entre la entrada y el stop loss se puede convertir en un trailing stop loss.
🟢 Take Profit: Tenemos 3 opciones para take profit, al igual que en el stop loss, el rango fijo de porcentaje(%) y precio($) se encuentran disponibles, adicional a esto tenemos la opción de ratio 1:#, que multiplica por X numero el rango entre la entrada y el stop loss para usarlo como take profit, perfecto para estrategias que usen ATR o ultimo punto alto/bajo.
📈 Entradas Heikin Ashi: Las entradas Heikin Ashi son trades que son calculados en base a las velas Aeikin Ashi pero su precio esta ejecutado a velas japonesas, evitando así los falsos resultados que se producen en graficas de velas Heikin, esto haciendo que en ciertos casos se obtengan mejores resultados en las estrategias que son ejecutadas con esta opción en comparación con las velas japonesas.
📊 Panel de Control: Una manera mas visual y organizada de ver los resultados y datos necesarios de nuestra estrategia.
Siéntete libre de usar esta plantilla para programar tus propias estrategias, si encuentras errores o quieres solicitar una nueva función házmelo saber en los comentarios o a través de mi Telegram: @hvert_mt
Big Candle Identifier with RSI Divergence and Advanced Stops1. Strategy Objective
The main goal of this strategy is to:
Identify significant price momentum (big candles).
Enter trades at opportune moments based on market signals (candlestick patterns and RSI divergence).
Limit initial risk through a fixed stop loss.
Maximize profits by using a trailing stop that activates only after the trade moves a specified distance in the profitable direction.
2. Components of the Strategy
A. Big Candle Identification
The strategy identifies big candles as indicators of strong momentum.
A big candle is defined as:
The body (absolute difference between close and open) of the current candle (body0) is larger than the bodies of the last five candles.
The candle is:
Bullish Big Candle: If close > open.
Bearish Big Candle: If open > close.
Purpose: Big candles signal potential continuation or reversal of trends, serving as the primary entry trigger.
B. RSI Divergence
Relative Strength Index (RSI): A momentum oscillator used to detect overbought/oversold conditions and divergence.
Fast RSI: A 5-period RSI, which is more sensitive to short-term price movements.
Slow RSI: A 14-period RSI, which smoothens fluctuations over a longer timeframe.
Divergence: The difference between the fast and slow RSIs.
Positive divergence (divergence > 0): Bullish momentum.
Negative divergence (divergence < 0): Bearish momentum.
Visualization: The divergence is plotted on the chart, helping traders confirm momentum shifts.
C. Stop Loss
Initial Stop Loss:
When entering a trade, an immediate stop loss of 200 points is applied.
This stop loss ensures the maximum risk is capped at a predefined level.
Implementation:
Long Trades: Stop loss is set below the entry price at low - 200 points.
Short Trades: Stop loss is set above the entry price at high + 200 points.
Purpose:
Prevents significant losses if the price moves against the trade immediately after entry.
D. Trailing Stop
The trailing stop is a dynamic risk management tool that adjusts with price movements to lock in profits. Here’s how it works:
Activation Condition:
The trailing stop only starts trailing when the trade moves 200 ticks (profit) in the right direction:
Long Position: close - entry_price >= 200 ticks.
Short Position: entry_price - close >= 200 ticks.
Trailing Logic:
Once activated, the trailing stop:
For Long Positions: Trails behind the price by 150 ticks (trail_stop = close - 150 ticks).
For Short Positions: Trails above the price by 150 ticks (trail_stop = close + 150 ticks).
Exit Condition:
The trade exits automatically if the price touches the trailing stop level.
Purpose:
Ensures profits are locked in as the trade progresses while still allowing room for price fluctuations.
E. Trade Entry Logic
Long Entry:
Triggered when a bullish big candle is identified.
Stop loss is set at low - 200 points.
Short Entry:
Triggered when a bearish big candle is identified.
Stop loss is set at high + 200 points.
F. Trade Exit Logic
Trailing Stop: Automatically exits the trade if the price touches the trailing stop level.
Fixed Stop Loss: Exits the trade if the price hits the predefined stop loss level.
G. 21 EMA
The strategy includes a 21-period Exponential Moving Average (EMA), which acts as a trend filter.
EMA helps visualize the overall market direction:
Price above EMA: Indicates an uptrend.
Price below EMA: Indicates a downtrend.
H. Visualization
Big Candle Identification:
The open and close prices of big candles are plotted for easy reference.
Trailing Stop:
Plotted on the chart to visualize its progression during the trade.
Green Line: Indicates the trailing stop for long positions.
Red Line: Indicates the trailing stop for short positions.
RSI Divergence:
Positive divergence is shown in green.
Negative divergence is shown in red.
3. Key Parameters
trail_start_ticks: The number of ticks required before the trailing stop activates (default: 200 ticks).
trail_distance_ticks: The distance between the trailing stop and price once the trailing stop starts (default: 150 ticks).
initial_stop_loss_points: The fixed stop loss in points applied at entry (default: 200 points).
tick_size: Automatically calculates the minimum tick size for the trading instrument.
4. Workflow of the Strategy
Step 1: Entry Signal
The strategy identifies a big candle (bullish or bearish).
If conditions are met, a trade is entered with a fixed stop loss.
Step 2: Initial Risk Management
The trade starts with an initial stop loss of 200 points.
Step 3: Trailing Stop Activation
If the trade moves 200 ticks in the profitable direction:
The trailing stop is activated and follows the price at a distance of 150 ticks.
Step 4: Exit the Trade
The trade is exited if:
The price hits the trailing stop.
The price hits the initial stop loss.
5. Advantages of the Strategy
Risk Management:
The fixed stop loss ensures that losses are capped.
The trailing stop locks in profits after the trade becomes profitable.
Momentum-Based Entries:
The strategy uses big candles as entry triggers, which often indicate strong price momentum.
Divergence Confirmation:
RSI divergence helps validate momentum and avoid false signals.
Dynamic Profit Protection:
The trailing stop adjusts dynamically, allowing the trade to capture larger moves while protecting gains.
6. Ideal Market Conditions
This strategy performs best in:
Trending Markets:
Big candles and momentum signals are more effective in capturing directional moves.
High Volatility:
Larger price swings improve the probability of reaching the trailing stop activation level (200 ticks).
RunRox - Backtesting System (SM)RunRox - Backtesting System (SM) is designed for flexible and comprehensive testing of trading strategies, closely integrated with our RunRox - Signals Master indicator. This combination enhances your ability to refine strategies efficiently, providing you with insights to adapt and optimize your trading tactics seamlessly.
The Backtesting System (SM) excels in pinpointing the optimal settings for the RunRox - Signals Master indicator, efficiently highlighting the most effective configurations.
Capabilities of the Backtesting System (SM)
Optimal Settings Determination: Identifies the best configurations for the Signals Master indicator to enhance its effectiveness.
Timeframe-Specific Strategy Testing: Allows strategies to be tested over specific historical time periods to assess their viability.
Customizable Initial Conditions: Enables setting of initial deposit, risk per trade, and commission rates to mirror real-world trading conditions.
Flexible Money Management: Provides options to set take profits and stop losses, optimizing potential returns and risk management.
Intuitive Dashboard: Features a user-friendly dashboard that visually displays all pertinent information, making it easy to analyze and adjust strategies.
Trading Flexibility Across Three Modes:
Dual-Direction Trading: Engage in both buying and selling with this mode. Our dashboard optimizes and identifies the best settings for trading in two directions, streamlining the process to maximize effectiveness for both buy and sell orders.
Buy-Only Mode: Tailored for traders focusing exclusively on purchasing assets. In this mode, our backtester pinpoints the most advantageous sensitivity, speed reaction, and filter settings specifically for buying. Optimal settings in this mode may differ from those used in dual-direction trading, providing a customized approach to single-direction strategies.
Sell-Only Mode: Perfect for strategies primarily based on selling. This setting allows you to discover the ideal configurations for asset sales, which can be particularly useful if you are looking for optimal exit points in long-term transactions or under specific market conditions.
Here's an example of how profits can differ on the same asset when trading using two distinct strategies: exclusively buying or trading in both directions.
Above in the image, you can see how one-directional trading influences the results of backtests on historical data. While this does not guarantee future outcomes, it provides insight into how the strategy's performance can vary with different trading directions.
As you can also see from the image, one-directional trading has affected the optimal combination of settings for Sensitivity, Speed Reaction, and Filters.
Stop Loss and Take Profit
Our backtesting system, as you might have gathered, includes flexible settings for take profits and stop losses. Here are the main features:
Multiple Take Profits: Ability to set from 1 to 4 take profit levels.
Fixed Percentage: Option to assign a fixed percentage for each take profit.
Trade Proportion Fixation: Ability to set a fixed size from the trade for securing profits.
Stop Loss Installation: Option to establish a stop loss.
Break-Even Stop Loss: Ability to move the stop loss to a break-even point upon reaching a specified take profit level.
These settings offer extensive flexibility and can be customized according to your preferences and trading style. They are suitable for both novice and professional traders looking to test their trading strategies on historical data.
As illustrated in the image above, we have implemented money management by setting fixed take profits and stop losses. Utilizing money management has improved indicators such as profit, maximum drawdown, and profit factor, turning even historically unprofitable strategies into profitable ones. Although this does not guarantee future results, it serves as a valuable tool for understanding the effectiveness of money management.
Additionally, as you can see, the optimal settings for Signals Master have been adjusted, highlighting the best configurations for the most favorable outcomes.
Disclaimer:
Historical data is not indicative of future results. All indicators and strategies provided by RunRox are intended for integration with traders' strategies and should be used as tools for analysis rather than standalone solutions. Traders should use their own discretion and understand that all trading involves risk.
Long-Only Opening Range Breakout (ORB) with Pivot PointsIntraday Trading Strategy: Long-Only Opening Range Breakout (ORB) with Pivot Points
Background:
Opening Range Breakout (ORB) is a popular long-only trading strategy that capitalizes on the early morning volatility in financial markets. It's based on the idea that the initial price movements during the first few minutes or hours of the trading day can set the tone for the rest of the session. The strategy involves identifying a price range within which the asset trades during the opening period and then taking long positions when the price breaks out to the upside of this range.
Pivot Points are a widely used technical indicator in trading. They represent potential support and resistance levels based on the previous day's price action. Pivot points are calculated using the previous day's high, low, and close prices and can help traders identify key price levels for making trading decisions.
How to Use the Script:
Initialization: This script is written in Pine Script, a domain-specific language for trading strategies on the TradingView platform. To use this script, you need to have access to TradingView.
Apply the Script: You can do this by adding it to your favorites, then selecting the script in the indicators list under favorites or by searching for it by name under community scripts.
Customize Settings: The script allows you to customize various settings through the TradingView interface. These settings include:
Opening Session: You can set the time frame for the opening session.
Max Trades per Day: Specify the maximum number of long trades allowed per trading day.
Initial Stop Loss Type: Choose between using a percentage-based stop loss or the previous candles low for stop loss calculations.
Stop Loss Percentage: If you select the percentage-based stop loss, specify the percentage of the entry price for the stop loss.
Backtesting Start and End Time: Set the time frame for backtesting the strategy.
Strategy Signals:
The script will display pivot points in blue (R1, R2, R3, R4, R5) and half-pivot points in gray (R0.5, R1.5, R2.5, R3.5, R4.5) on your chart.
The green line represents the opening range.
The script generates long (buy) signals based on specific conditions:
---The open price is below the opening range high (h).
---The current high price is above the opening range high.
---Pivot point R1 is above the opening range high.
---It's a long-only strategy designed to capture upside breakouts.
---It also respects the maximum number of long trades per day.
The script manages long positions, calculates stop losses, and adjusts long positions according to the defined rules.
Trailing Stop Mechanism
The script incorporates a dynamic trailing stop mechanism designed to protect and maximize profits for long positions. Here's how it works:
1. Initialization:
The script allows you to choose between two types of initial stop loss:
---Percentage-based: This option sets the initial stop loss as a percentage of the entry price.
---Previous day's low: This option sets the initial stop loss at the previous day's low.
2. Setting the Initial Stop Loss (`sl_long0`):
The initial stop loss (`sl_long0`) is calculated based on the chosen method:
---If "Percentage" is selected, it calculates the stop loss as a percentage of the entry price.
---If "Previous Low" is selected, it sets the stop loss at the previous day's low.
3. Dynamic Trailing Stop (`trail_long`):
The script then monitors price movements and uses a dynamic trailing stop mechanism (`trail_long`) to adjust the stop loss level for long positions.
If the current high price rises above certain pivot point levels, the trailing stop is adjusted upwards to lock in profits.
The trailing stop levels are calculated based on pivot points (`r1`, `r2`, `r3`, etc.) and half-pivot points (`r0.5`, `r1.5`, `r2.5`, etc.).
The script checks if the high price surpasses these levels and, if so, updates the trailing stop accordingly.
This dynamic trailing stop allows traders to secure profits while giving the position room to potentially capture additional gains.
4. Final Stop Loss (`sl_long`):
The script calculates the final stop loss level (`sl_long`) based on the following logic:
---If no position is open (`pos == 0`), the stop loss is set to zero, indicating there is no active stop loss.
---If a position is open (`pos == 1`), the script calculates the maximum of the initial stop loss (`sl_long0`) and the dynamic trailing stop (`trail_long`).
---This ensures that the stop loss is always set to the more conservative of the two values to protect profits.
5. Plotting the Stop Loss:
The script plots the stop loss level on the chart using the `plot` function.
It will only display the stop loss level if there is an open position (`pos == 1`) and it's not a new trading day (`not newday`).
The stop loss level is shown in red on the chart.
By combining an initial stop loss with a dynamic trailing stop based on pivot points and half-pivot points, the script aims to provide a comprehensive risk management mechanism for long positions. This allows traders to lock in profits as the price moves in their favor while maintaining a safeguard against adverse price movements.
End of Day (EOD) Exit:
The script includes an "End of Day" (EOD) exit mechanism to automatically close any open positions at the end of the trading day. This feature is designed to manage and control positions when the trading day comes to a close. Here's how it works:
1. Initialization:
At the beginning of each trading day, the script identifies a new trading day using the `is_newbar('D')` condition.
When a new trading day begins, the `newday` variable becomes `true`, indicating the start of a new trading session.
2. Plotting the "End of Day" Signal:
The script includes a plot on the chart to visually represent the "End of Day" signal. This is done using the `plot` function.
The plot is labeled "DayEnd" and is displayed as a comment on the chart. It signifies the EOD point.
3. EOD Exit Condition:
When the script detects that a new trading day has started (`newday == true`), it triggers the EOD exit condition.
At this point, the script proceeds to close all open positions that may have been active during the trading day.
4. Closing Open Positions:
The `strategy.close_all` function is used to close all open positions when the EOD exit condition is met.
This function ensures that any remaining long positions are exited, regardless of their current profit or loss.
The function also includes an `alert_message`, which can be customized to send an alert or notification when positions are closed at EOD.
Purpose of EOD Exit
The "End of Day" exit mechanism serves several essential purposes in the trading strategy:
Risk Management: It helps manage risk by ensuring that positions are not left open overnight when markets can experience increased volatility.
Capital Preservation: Closing positions at EOD can help preserve trading capital by avoiding potential adverse overnight price movements.
Rule-Based Exit: The EOD exit is rule-based and automatic, ensuring that it is consistently applied without emotions or manual intervention.
Scalability: It allows the strategy to be applied to various markets and timeframes where EOD exits may be appropriate.
By incorporating an EOD exit mechanism, the script provides a comprehensive approach to managing positions, taking profits, and minimizing risk as each trading day concludes. This can be especially important in volatile markets like cryptocurrencies, where overnight price swings can be significant.
Backtesting: The script includes a backtesting feature that allows you to test the strategy's performance over historical data. Set the start and end times for backtesting to see how the long-only strategy would have performed in the past.
Trade Execution: If you choose to use this script for live trading, make sure you understand the risks involved. It's essential to set up proper risk management, including position sizing and stop loss orders.
Monitoring: Monitor the long-only strategy's performance over time and be prepared to make adjustments as market conditions change.
Disclaimer: Trading carries a risk of capital loss. This script is provided for educational purposes and as a starting point for your own long-only strategy development. Always do your own research and consider seeking advice from a qualified financial professional before making trading decisions.
Supertrend TP SL (PRO)2. Main Components:
Supertrend Indicator:
Theoretical basis: The Supertrend indicator is based on two main concepts: Average True Range (ATR) and Factor. ATR measures the extent of price fluctuations in a given period of time, while Factor determines the sensitivity of the indicator to price changes.
Mechanism of operation: The indicator calculates two possible lines: one line representing the potential support level and another line representing the potential resistance level. The selection of the appropriate line depends on the current price direction. When the price is above the line, the indicator is considered to be in an uptrend, and vice versa.
Customizable inputs:
atrPeriod: Allows the trader to specify the time period for calculating the ATR. Shorter periods make the indicator more sensitive to price changes, while longer periods reduce its sensitivity.
factor: Allows the adjustment of the factor. Higher values make the indicator less likely to give false signals, but they may also delay entry signals.
Risk Management:
Take Profit and Stop Loss Orders:
TPPoints: Specifies the distance between the entry price and the take profit level. This distance is expressed in points, and is converted to an actual price value using syminfo.mintick (the smallest possible price movement of the traded asset).
SLPoints: Specifies the distance between the entry price and the stop loss level.
Importance: These orders allow the trader to specify the maximum loss he is willing to take and the profit target he is aiming to achieve, which helps in effective risk management.
Activate/Disable Trades:
isLongEnabled: Allows buy trades to be enabled or disabled, which allows the trader to trade in one direction only (for example, only trade in the uptrend during a bull market).
isShortEnabled: Allows sell trades to be enabled or disabled.
isTakeProfitEnabled: Allows take profit orders to be enabled or disabled. The trader may wish to disable them if he prefers to manage his trades manually.
isStopLossEnabled: Allows you to enable or disable stop loss orders. Although disabling them may seem tempting in some cases, it is a very risky move.
Visual Customization:
Line Style and Width:
lineStyle: Allows the trader to choose the style of lines used to draw TP and SL levels (Solid, Dashed, Dotted).
lineWidth: Sets the thickness of the lines.
Label Size:
labelSize: Allows you to set the size of the labels that display TP and SL levels (Small, Normal, Large).
Colors:
bullColor, bearColor, tpColor, slColor: Allows the trader to customize the colors of the different elements on the chart, making visual analysis easier.
3. Strategy Logic:
Determining Entry Signals: The strategy relies on the Supertrend indicator to determine entry signals. When the Supertrend trend changes from bearish to bullish, a buy trade is triggered (if isLongEnabled is enabled). When the trend changes from bullish to bearish, a sell trade is triggered (if isShortEnabled is enabled).
Order Execution: Once the entry signal is triggered, the strategy automatically places buy or sell orders.
Trade Management: After opening a trade, the strategy monitors the price and automatically triggers Take Profit and Stop Loss orders if the price reaches the specified levels.
Visualization: The strategy displays useful information on the chart, such as TP and SL lines, entry and exit signals, which helps the trader understand the strategy’s behavior and evaluate its performance.
4. Advanced Tips:
Optimizing Settings: The strategy’s performance can be improved by adjusting different input values. For example, the trader can experiment with different values for atrPeriod and factor to improve the accuracy of Supertrend signals.
Combining Indicators: This strategy can be combined with other indicators to improve the accuracy of entry signals. For example, the Relative Strength Index (RSI) can be used to confirm Supertrend signals.
Time Analysis: The strategy’s performance can be analyzed over different time periods to evaluate its effectiveness in various market conditions.
Strategy Testing: Before using the strategy in real trading, it should be tested on historical data (Backtesting) to evaluate its performance and determine the optimal settings.
5. Associated Risks:
False Signals: The Supertrend indicator may sometimes give false signals, especially in volatile markets.
Losses: Even with the use of stop loss orders, the trader may be exposed to significant losses.
Over-optimization: Over-optimization of settings on historical data may lead to misleading results. The trader should be careful about generalizing the results to future data.
Over-reliance on automation: The automated strategy should not be relied upon completely. The trader should monitor the trades and make appropriate decisions when necessary.
6. Disclaimer:
I am not a licensed financial advisor. This strategy is provided for educational and illustrative purposes only and should not be considered as investment advice. Trading in financial markets involves significant risks and you may lose your invested capital. Before making any investment decisions, consult a qualified financial advisor and conduct your own research. You alone are responsible for your trading decisions and their results. By using this strategy, you acknowledge and agree that I am not responsible for any losses or damages you may incur.
2. المكونات الرئيسية:
مؤشر Supertrend:
الأساس النظري: يعتمد مؤشر Supertrend على مفهومين رئيسيين هما: متوسط المدى الحقيقي (Average True Range - ATR) ومعامل الضرب (Factor). ATR يقيس مدى تقلبات الأسعار في فترة زمنية محددة، بينما Factor يحدد مدى حساسية المؤشر لتغيرات الأسعار.
آلية العمل: يقوم المؤشر بحساب خطين محتملين: خط يمثل مستوى الدعم المحتمل وخط آخر يمثل مستوى المقاومة المحتمل. يعتمد اختيار الخط المناسب على اتجاه السعر الحالي. عندما يكون السعر أعلى من الخط، يعتبر المؤشر في اتجاه صاعد، والعكس صحيح.
المدخلات القابلة للتخصيص:
atrPeriod: يتيح للمتداول تحديد الفترة الزمنية لحساب ATR. الفترات الأقصر تجعل المؤشر أكثر حساسية لتغيرات الأسعار، بينما الفترات الأطول تقلل من حساسيته.
factor: يسمح بتعديل معامل الضرب. القيم الأعلى تجعل المؤشر أقل عرضة لإعطاء إشارات خاطئة، ولكنها قد تؤخر أيضًا إشارات الدخول.
إدارة المخاطر:
أوامر جني الأرباح وإيقاف الخسارة:
TPPoints: يحدد المسافة بين سعر الدخول ومستوى جني الأرباح. يتم التعبير عن هذه المسافة بالنقاط (Points)، ويتم تحويلها إلى قيمة سعرية فعلية باستخدام syminfo.mintick (أصغر حركة سعرية ممكنة للأصل المتداول).
SLPoints: يحدد المسافة بين سعر الدخول ومستوى إيقاف الخسارة.
الأهمية: تتيح هذه الأوامر للمتداول تحديد الحد الأقصى للخسارة التي يرغب في تحملها والهدف الربحي الذي يسعى لتحقيقه، مما يساعد على إدارة المخاطر بشكل فعال.
تفعيل/تعطيل الصفقات:
isLongEnabled: يسمح بتفعيل أو تعطيل صفقات الشراء، مما يمكن المتداول من التداول في اتجاه واحد فقط (على سبيل المثال، التداول فقط في الاتجاه الصاعد خلال سوق صاعدة).
isShortEnabled: يسمح بتفعيل أو تعطيل صفقات البيع.
isTakeProfitEnabled: يسمح بتفعيل أو تعطيل أوامر جني الأرباح. قد يرغب المتداول في تعطيلها إذا كان يفضل إدارة صفقاته يدويًا.
isStopLossEnabled: يسمح بتفعيل أو تعطيل أوامر إيقاف الخسارة. على الرغم من أن تعطيلها قد يبدو مغريًا في بعض الحالات، إلا أنه يعتبر خطوة محفوفة بالمخاطر للغاية.
التخصيص المرئي:
نمط وعرض الخطوط:
lineStyle: يتيح للمتداول اختيار نمط الخطوط المستخدمة لرسم مستويات TP و SL (Solid, Dashed, Dotted).
lineWidth: يحدد سمك الخطوط.
حجم الملصقات:
labelSize: يسمح بتحديد حجم الملصقات التي تعرض مستويات TP و SL (Small, Normal, Large).
الألوان:
bullColor, bearColor, tpColor, slColor: تتيح للمتداول تخصيص ألوان العناصر المختلفة على الرسم البياني، مما يسهل عملية التحليل البصري.
3. منطق عمل الاستراتيجية:
تحديد إشارات الدخول: تعتمد الاستراتيجية على مؤشر Supertrend لتحديد إشارات الدخول. عندما يتغير اتجاه Supertrend من هابط إلى صاعد، يتم تفعيل صفقة شراء (إذا كانت isLongEnabled مفعلة). وعندما يتغير الاتجاه من صاعد إلى هابط، يتم تفعيل صفقة بيع (إذا كانت isShortEnabled مفعلة).
تنفيذ الأوامر: بمجرد تفعيل إشارة الدخول، تقوم الاستراتيجية بوضع أوامر الشراء أو البيع تلقائيًا.
إدارة الصفقات: بعد فتح الصفقة، تقوم الاستراتيجية بمراقبة السعر وتفعيل أوامر جني الأرباح وإيقاف الخسارة تلقائيًا في حالة وصول السعر إلى المستويات المحددة.
التمثيل المرئي: تعرض الاستراتيجية معلومات مفيدة على الرسم البياني، مثل خطوط TP و SL وإشارات الدخول والخروج، مما يساعد المتداول على فهم سلوك الاستراتيجية وتقييم أدائها.
4. نصائح متقدمة:
تحسين الإعدادات: يمكن تحسين أداء الاستراتيجية من خلال تعديل قيم المدخلات المختلفة. على سبيل المثال، يمكن للمتداول تجربة قيم مختلفة لـ atrPeriod و factor لتحسين دقة إشارات Supertrend.
الجمع بين المؤشرات: يمكن دمج هذه الاستراتيجية مع مؤشرات أخرى لتحسين دقة إشارات الدخول. على سبيل المثال، يمكن استخدام مؤشر القوة النسبية (RSI) لتأكيد إشارات Supertrend.
التحليل الزمني: يمكن تحليل أداء الاستراتيجية على مدى فترات زمنية مختلفة لتقييم مدى فعاليتها في ظروف السوق المتنوعة.
اختبار الاستراتيجية: قبل استخدام الاستراتيجية في التداول الحقيقي، يجب اختبارها على بيانات تاريخية (Backtesting) لتقييم أدائها وتحديد الإعدادات المثلى.
5. المخاطر المرتبطة:
الإشارات الخاطئة: قد يعطي مؤشر Supertrend إشارات خاطئة في بعض الأحيان، خاصة في الأسواق المتقلبة.
الخسائر: حتى مع استخدام أوامر إيقاف الخسارة، قد يتعرض المتداول لخسائر كبيرة.
التحسين المفرط: قد يؤدي التحسين المفرط للإعدادات على بيانات تاريخية إلى نتائج مضللة. يجب أن يكون المتداول حذرًا بشأن تعميم النتائج على البيانات المستقبلية.
الاعتماد الزائد على الأتمتة: يجب عدم الاعتماد بشكل كامل على الاستراتيجية الآلية. يجب على المتداول مراقبة الصفقات واتخاذ القرارات المناسبة عند الضرورة.
6. إخلاء المسؤولية:
أنا لست مستشارًا ماليًا مرخصًا. هذه الاستراتيجية مقدمة لأغراض تعليمية وتوضيحية فقط، ولا ينبغي اعتبارها نصيحة استثمارية. التداول في الأسواق المالية ينطوي على مخاطر كبيرة، وقد تخسر رأس المال المستثمر. قبل اتخاذ أي قرارات استثمارية، استشر مستشارًا ماليًا مؤهلاً وقم بإجراء بحثك الخاص. أنت وحدك المسؤول عن قراراتك التجارية ونتائجها. باستخدام هذه الاستراتيجية، فإنك تقر وتوافق على أنني لست مسؤولاً عن أي خسائر أو أضرار قد تتكبدها.
AlgoBuilder [Mean-Reversion] | FractalystWhat's the strategy's purpose and functionality?
This strategy is designed for both traders and investors looking to rely and trade based on historical and backtested data using automation.
The main goal is to build profitable mean-reversion strategies that outperform the underlying asset in terms of returns while minimizing drawdown.
For example, as for a benchmark, if the S&P 500 (SPX) has achieved an estimated 10% annual return with a maximum drawdown of -57% over the past 20 years, using this strategy with different entry and exit techniques, users can potentially seek ways to achieve a higher Compound Annual Growth Rate (CAGR) while maintaining a lower maximum drawdown.
Although the strategy can be applied to all markets and timeframes, it is most effective on stocks, indices, future markets, cryptocurrencies, and commodities and JPY currency pairs given their trending behaviors.
In trending market conditions, the strategy employs a combination of moving averages and diverse entry models to identify and capitalize on upward market movements. It integrates market structure-based moving averages and bands mechanisms across different timeframes and provides exit techniques, including percentage-based and risk-reward (RR) based take profit levels.
Additionally, the strategy has also a feature that includes a built-in probability function for traders who want to implement probabilities right into their trading strategies.
Performance summary, weekly, and monthly tables enable quick visualization of performance metrics like net profit, maximum drawdown, profit factor, average trade, average risk-reward ratio (RR), and more.
This aids optimization to meet specific goals and risk tolerance levels effectively.
-----
How does the strategy perform for both investors and traders?
The strategy has two main modes, tailored for different market participants: Traders and Investors.
Trading:
1. Trading:
- Designed for traders looking to capitalize on bullish trending markets.
- Utilizes a percentage risk per trade to manage risk and optimize returns.
- Suitable for active trading with a focus on mean-reversion and risk per trade approach.
◓: Mode | %: Risk percentage per trade
3. Investing:
- Geared towards investors who aim to capitalize on bullish trending markets without using leverage while mitigating the asset's maximum drawdown.
- Utilizes pre-define percentage of the equity to buy, hold, and manage the asset.
- Focuses on long-term growth and capital appreciation by fully investing in the asset during bullish conditions.
- ◓: Mode | %: Risk not applied (In investing mode, the strategy uses 10% of equity to buy the asset)
-----
What's is FRMA? How does the triple bands work? What are the underlying calculations?
Middle Band (FRMA):
The middle band is the core of the FRMA system. It represents the Fractalyst Moving Average, calculated by identifying the most recent external swing highs and lows in the market structure.
By determining these external swing pivot points, which act as significant highs and lows within the market range, the FRMA provides a unique moving average that adapts to market structure changes.
Upper Band:
The upper band shows the average price of the most recent external swing highs.
External swing highs are identified as the highest points between pivot points in the market structure.
This band helps traders identify potential overbought conditions when prices approach or exceed this upper band.
Lower Band:
The lower band shows the average price of the most recent external swing lows.
External swing lows are identified as the lowest points between pivot points in the market structure.
The script utilizes this band to identify potential oversold conditions, triggering entry signals as prices approach or drop below the lower band.
Adjustments Based on User Inputs:
Users can adjust how the upper and lower bands are calculated based on their preferences:
Upper/Lower: This method calculates the average bands using the prices of external swing highs and lows identified in the market.
Percentage Deviation from FRMA: Alternatively, users can opt to calculate the bands based on a percentage deviation from the middle FRMA. This approach provides flexibility to adjust the width of the bands relative to market conditions and volatility.
-----
What's the purpose of using moving averages in this strategy? What are the underlying calculations?
Using moving averages is a widely-used technique to trade with the trend.
The main purpose of using moving averages in this strategy is to filter out bearish price action and to only take trades when the price is trading ABOVE specified moving averages.
The script uses different types of moving averages with user-adjustable timeframes and periods/lengths, allowing traders to try out different variations to maximize strategy performance and minimize drawdowns.
By applying these calculations, the strategy effectively identifies bullish trends and avoids market conditions that are not conducive to profitable trades.
The MA filter allows traders to choose whether they want a specific moving average above or below another one as their entry condition.
This comparison filter can be turned on (>) or off.
For example, you can set the filter so that MA#1 > MA#2, meaning the first moving average must be above the second one before the script looks for entry conditions. This adds an extra layer of trend confirmation, ensuring that trades are only taken in more favorable market conditions.
⍺: MA Period | Σ: MA Timeframe
-----
What entry modes are used in this strategy? What are the underlying calculations?
The strategy by default uses two different techniques for the entry criteria with user-adjustable left and right bars: Breakout and Fractal.
1. Breakout Entries :
- The strategy looks for pivot high points with a default period of 3.
- It stores the most recent high level in a variable.
- When the price crosses above this most recent level, the strategy checks if all conditions are met and the bar is closed before taking the buy entry.
◧: Pivot high left bars period | ◨: Pivot high right bars period
2. Fractal Entries :
- The strategy looks for pivot low points with a default period of 3.
- When a pivot low is detected, the strategy checks if all conditions are met and the bar is closed before taking the buy entry.
◧: Pivot low left bars period | ◨: Pivot low right bars period
2. Hunt Entries :
- The strategy identifies a candle that wicks through the lower FRMA band.
- It waits for the next candle to close above the low of the wick candle.
- When this condition is met and the bar is closed, the strategy takes the buy entry.
By utilizing these entry modes, the strategy aims to capitalize on bullish price movements while ensuring that the necessary conditions are met to validate the entry points.
-----
What type of stop-loss identification method are used in this strategy? What are the underlying calculations?
Initial Stop-Loss:
1. ATR Based:
The Average True Range (ATR) is a method used in technical analysis to measure volatility. It is not used to indicate the direction of price but to measure volatility, especially volatility caused by price gaps or limit moves.
Calculation:
- To calculate the ATR, the True Range (TR) first needs to be identified. The TR takes into account the most current period high/low range as well as the previous period close.
The True Range is the largest of the following:
- Current Period High minus Current Period Low
- Absolute Value of Current Period High minus Previous Period Close
- Absolute Value of Current Period Low minus Previous Period Close
- The ATR is then calculated as the moving average of the TR over a specified period. (The default period is 14).
Example - ATR (14) * 2
⍺: ATR period | Σ: ATR Multiplier
2. ADR Based:
The Average Day Range (ADR) is an indicator that measures the volatility of an asset by showing the average movement of the price between the high and the low over the last several days.
Calculation:
- To calculate the ADR for a particular day:
- Calculate the average of the high prices over a specified number of days.
- Calculate the average of the low prices over the same number of days.
- Find the difference between these average values.
- The default period for calculating the ADR is 14 days. A shorter period may introduce more noise, while a longer period may be slower to react to new market movements.
Example - ADR (20) * 2
⍺: ADR period | Σ: ADR Multiplier
3. PL Based:
This method places the stop-loss at the low of the previous candle.
If the current entry is based on the hunt entry strategy, the stop-loss will be placed at the low of the candle that wicks through the lower FRMA band.
Example:
If the previous candle's low is 100, then the stop-loss will be set at 100.
This method ensures the stop-loss is placed just below the most recent significant low, providing a logical and immediate level for risk management.
Application in Strategy (ATR/ADR):
- The strategy calculates the current bar's ADR/ATR with a user-defined period.
- It then multiplies the ADR/ATR by a user-defined multiplier to determine the initial stop-loss level.
By using these methods, the strategy dynamically adjusts the initial stop-loss based on market volatility, helping to protect against adverse price movements while allowing for enough room for trades to develop.
Each market behaves differently across various timeframes, and it is essential to test different parameters and optimizations to find out which trailing stop-loss method gives you the desired results and performance.
-----
What type of break-even and take profit identification methods are used in this strategy? What are the underlying calculations?
For Break-Even:
Percentage (%) Based:
Moves the initial stop-loss to the entry price when the price reaches a certain percentage above the entry.
Calculation:
Break-even level = Entry Price * (1 + Percentage / 100)
Example:
If the entry price is $100 and the break-even percentage is 5%, the break-even level is $100 * 1.05 = $105.
Risk-to-Reward (RR) Based:
Moves the initial stop-loss to the entry price when the price reaches a certain RR ratio.
Calculation:
Break-even level = Entry Price + (Initial Risk * RR Ratio)
Example:
If the entry price is $100, the initial risk is $10, and the RR ratio is 2, the break-even level is $100 + ($10 * 2) = $120.
FRMA Based:
Moves the stop-loss to break-even when the price hits the FRMA level at which the entry was taken.
Calculation:
Break-even level = FRMA level at the entry
Example:
If the FRMA level at entry is $102, the break-even level is set to $102 when the price reaches $102.
For TP1 (Take Profit 1):
- You can choose to set a take profit level at which your position gets fully closed or 50% if the TP2 boolean is enabled.
- Similar to break-even, you can select either a percentage (%) or risk-to-reward (RR) based take profit level, allowing you to set your TP1 level as a percentage amount above the entry price or based on RR.
For TP2 (Take Profit 2):
- You can choose to set a take profit level at which your position gets fully closed.
- As with break-even and TP1, you can select either a percentage (%) or risk-to-reward (RR) based take profit level, allowing you to set your TP2 level as a percentage amount above the entry price or based on RR.
When Both Percentage (%) Based and RR Based Take Profit Levels Are Off:
The script will adjust the take profit level to the higher FRMA band set within user inputs.
Calculation:
Take profit level = Higher FRMA band length/timeframe specified by the user.
This ensures that when neither percentage-based nor risk-to-reward-based take profit methods are enabled, the strategy defaults to using the higher FRMA band as the take profit level, providing a consistent and structured approach to profit-taking.
For TP1 and TP2, it's specifying the price levels at which the position is partially or fully closed based on the chosen method (percentage or RR) above the entry price.
These calculations are crucial for managing risk and optimizing profitability in the strategy.
⍺: BE/TP type (%/RR) | Σ: how many RR/% above the current price
-----
What's the ADR filter? What does it do? What are the underlying calculations?
The Average Day Range (ADR) measures the volatility of an asset by showing the average movement of the price between the high and the low over the last several days.
The period of the ADR filter used in this strategy is tied to the same period you've used for your initial stop-loss.
Users can define the minimum ADR they want to be met before the script looks for entry conditions.
ADR Bias Filter:
- Compares the current bar ADR with the ADR (Defined by user):
- If the current ADR is higher, it indicates that volatility has increased compared to ADR (DbU).(⬆)
- If the current ADR is lower, it indicates that volatility has decreased compared to ADR (DbU).(⬇)
Calculations:
1. Calculate ADR:
- Average the high prices over the specified period.
- Average the low prices over the same period.
- Find the difference between these average values in %.
2. Current ADR vs. ADR (DbU):
- Calculate the ADR for the current bar.
- Calculate the ADR (DbU).
- Compare the two values to determine if volatility has increased or decreased.
By using the ADR filter, the strategy ensures that trades are only taken in favorable market conditions where volatility meets the user's defined threshold, thus optimizing entry conditions and potentially improving the overall performance of the strategy.
>: Minimum required ADR for entry | %: Current ADR comparison to ADR of 14 days ago.
-----
What's the probability filter? What are the underlying calculations?
The probability filter is designed to enhance trade entries by using buyside liquidity and probability analysis to filter out unfavorable conditions.
This filter helps in identifying optimal entry points where the likelihood of a profitable trade is higher.
Calculations:
1. Understanding Swing highs and Swing Lows
Swing High: A Swing High is formed when there is a high with 2 lower highs to the left and right.
Swing Low: A Swing Low is formed when there is a low with 2 higher lows to the left and right.
2. Understanding the purpose and the underlying calculations behind Buyside, Sellside and Equilibrium levels.
3. Understanding probability calculations
1. Upon the formation of a new range, the script waits for the price to reach and tap into equilibrium or the 50% level. Status: "⏸" - Inactive
2. Once equilibrium is tapped into, the equilibrium status becomes activated and it waits for either liquidity side to be hit. Status: "▶" - Active
3. If the buyside liquidity is hit, the script adds to the count of successful buyside liquidity occurrences. Similarly, if the sellside is tapped, it records successful sellside liquidity occurrences.
5. Finally, the number of successful occurrences for each side is divided by the overall count individually to calculate the range probabilities.
Note: The calculations are performed independently for each directional range. A range is considered bearish if the previous breakout was through a sellside liquidity. Conversely, a range is considered bullish if the most recent breakout was through a buyside liquidity.
Example - BSL > 55%
-----
What's the range length Filter? What are the underlying calculations?
The range length filter identifies the price distance between buyside and sellside liquidity levels in percentage terms. When enabled, the script only looks for entries when the minimum range length is met. This helps ensure that trades are taken in markets with sufficient price movement.
Calculations:
Range Length (%) = ( ( Buyside Level − Sellside Level ) / Current Price ) ×100
Range Bias Identification:
Bullish Bias: The current range price has broken above the previous external swing high.
Bearish Bias: The current range price has broken below the previous external swing low.
Example - Range length filter is enabled | Range must be above 1%
>: Minimum required range length for entry | %: Current range length percentage in a (Bullish/Bearish) range
-----
What's the day filter Filter, what does it do?
The day filter allows users to customize the session time and choose the specific days they want to include in the strategy session. This helps traders tailor their strategies to particular trading sessions or days of the week when they believe the market conditions are more favorable for their trading style.
Customize Session Time:
Users can define the start and end times for the trading session.
This allows the strategy to only consider trades within the specified time window, focusing on periods of higher market activity or preferred trading hours.
Select Days:
Users can select which days of the week to include in the strategy.
This feature is useful for excluding days with historically lower volatility or unfavorable trading conditions (e.g., Mondays or Fridays).
Benefits:
Focus on Optimal Trading Periods:
By customizing session times and days, traders can focus on periods when the market is more likely to present profitable opportunities.
Avoid Unfavorable Conditions:
Excluding specific days or times can help avoid trading during periods of low liquidity or high unpredictability, such as major news events or holidays.
Increased Flexibility: The filter provides increased flexibility, allowing traders to adapt the strategy to their specific needs and preferences.
Example - Day filter | Session Filter
θ: Session time | Exchange time-zone
-----
What tables are available in this script?
Table Type:
- Summary: Provides a general overview, displaying key performance parameters such as Net Profit, Profit Factor, Max Drawdown, Average Trade, Closed Trades and more.
Avg Trade: The sum of money gained or lost by the average trade generated by a strategy. Calculated by dividing the Net Profit by the overall number of closed trades. An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.
MaxDD: Displays the largest drawdown of losses, i.e., the maximum possible loss that the strategy could have incurred among all of the trades it has made. This value is calculated separately for every bar that the strategy spends with an open position.
Profit Factor: The amount of money a trading strategy made for every unit of money it lost (in the selected currency). This value is calculated by dividing gross profits by gross losses.
Avg RR: This is calculated by dividing the average winning trade by the average losing trade. This field is not a very meaningful value by itself because it does not take into account the ratio of the number of winning vs losing trades, and strategies can have different approaches to profitability. A strategy may trade at every possibility in order to capture many small profits, yet have an average losing trade greater than the average winning trade. The higher this value is, the better, but it should be considered together with the percentage of winning trades and the net profit.
Winrate: The percentage of winning trades generated by a strategy. Calculated by dividing the number of winning trades by the total number of closed trades generated by a strategy. Percent profitable is not a very reliable measure by itself. A strategy could have many small winning trades, making the percent profitable high with a small average winning trade, or a few big winning trades accounting for a low percent profitable and a big average winning trade. Most mean-reversion successful strategies have a percent profitability of 40-80% but are profitable due to risk management control.
BE Trades: Number of break-even trades, excluding commission/slippage.
Losing Trades: The total number of losing trades generated by the strategy.
Winning Trades: The total number of winning trades generated by the strategy.
Total Trades: Total number of taken traders visible your charts.
Net Profit: The overall profit or loss (in the selected currency) achieved by the trading strategy in the test period. The value is the sum of all values from the Profit column (on the List of Trades tab), taking into account the sign.
- Monthly: Displays performance data on a month-by-month basis, allowing users to analyze performance trends over each month.
- Weekly: Displays performance data on a week-by-week basis, helping users to understand weekly performance variations.
- OFF: Hides the performance table.
Profit Color:
- Allows users to set the color for representing profit in the performance table, helping to quickly distinguish profitable periods.
Loss Color:
- Allows users to set the color for representing loss in the performance table, helping to quickly identify loss-making periods.
These customizable tables provide traders with flexible and detailed performance analysis, aiding in better strategy evaluation and optimization.
-----
User-input styles and customizations:
To facilitate studying historical data, all conditions and rules can be applied to your charts. By plotting background colors on your charts, you'll be able to identify what worked and what didn't in certain market conditions.
Please note that all background colors in the style are disabled by default to enhance visualization.
-----
How to Use This Algobuilder to Create a Profitable Edge and System:
Choose Your Strategy mode:
- Decide whether you are creating an investing strategy or a trading strategy.
Select a Market:
- Choose a one-sided market such as stocks, indices, or cryptocurrencies.
Historical Data:
- Ensure the historical data covers at least 10 years of price action for robust backtesting.
Timeframe Selection:
- Choose the timeframe you are comfortable trading with. It is strongly recommended to use a timeframe above 15 minutes to minimize the impact of commissions/slippage on your profits.
Set Commission and Slippage:
- Properly set the commission and slippage in the strategy properties according to your broker or prop firm specifications.
Parameter Optimization:
- Use trial and error to test different parameters until you find the performance results you are looking for in the summary table or, preferably, through deep backtesting using the strategy tester.
Trade Count:
- Ensure the number of trades is 100 or more; the higher, the better for statistical significance.
Positive Average Trade:
- Make sure the average trade value is above zero.
(An important value since it must be large enough to cover the commission and slippage costs of trading the strategy and still bring a profit.)
Performance Metrics:
- Look for a high profit factor, and net profit with minimum drawdown.
- Ideally, aim for a drawdown under 20-30%, depending on your risk tolerance.
Refinement and Optimization:
- Try out different markets and timeframes.
- Continue working on refining your edge using the available filters and components to further optimize your strategy.
Automation:
- Once you’re confident in your strategy, you can use the automation section to connect the algorithm to your broker or prop firm.
- Trade a fully automated and backtested trading strategy, allowing for hands-free execution and management.
-----
What makes this strategy original?
1. Incorporating direct integration of probabilities into the strategy.
2. Utilizing built-in market structure-based moving averages across various timeframes.
4. Offering both investing and trading strategies, facilitating optimization from different perspectives.
5. Automation for efficient execution.
6. Providing a summary table for instant access to key parameters of the strategy.
-----
How to use automation?
For Traders:
1. Ensure the strategy parameters are properly set based on your optimized parameters.
2. Enter your PineConnector License ID in the designated field.
3. Specify the desired risk level.
4. Provide the Metatrader symbol.
5. Check for chart updates to ensure the automation table appears on the top right corner, displaying your License ID, risk, and symbol.
6. Set up an alert with the strategy selected as Condition and the Message as {{strategy.order.alert_message}}.
7. Activate the Webhook URL in the Notifications section, setting it as the official PineConnector webhook address.
8. Double-check all settings on PineConnector to ensure the connection is successful.
9. Create the alert for entry/exit automation.
For Investors:
1. Ensure the strategy parameters are properly set based on your optimized parameters.
2. Choose "Investing" in the user-input settings.
3. Create an alert with a specified name.
4. Customize the notifications tab to receive alerts via email.
5. Buying/selling alerts will be triggered instantly upon entry or exit order execution.
-----
Terms and Conditions | Disclaimer
Our charting tools are provided for informational and educational purposes only and should not be construed as financial, investment, or trading advice. They are not intended to forecast market movements or offer specific recommendations. Users should understand that past performance does not guarantee future results and should not base financial decisions solely on historical data.
Built-in components, features, and functionalities of our charting tools are the intellectual property of @Fractalyst Unauthorized use, reproduction, or distribution of these proprietary elements is prohibited.
By continuing to use our charting tools, the user acknowledges and accepts the Terms and Conditions outlined in this legal disclaimer and agrees to respect our intellectual property rights and comply with all applicable laws and regulations.
Strategy - Plus / Connectable [Azullian]Discover the advanced capabilities of Strategy Plus, an essential component of the connectable indicator system designed for fast-paced strategy testing, visualization, and building within TradingView. This enhanced version of our foundational connectable strategy indicator seamlessly integrates with all connectable indicators . By utilizing the TradingView input source as a signal connector , it facilitates the linking of indicators to form a cohesive strategy. Each connectable indicator within the system sends signal weight to the next node, culminating in a comprehensive strategy that incorporates advanced customization options, sophisticated signal interpretation, and elaborate backtest labeling. Strategy Plus stands out by offering improved position management and extensive alert messaging capabilities, ensuring effective strategy refinement and backend integration.
█ DISTINCTIVE FEATURES
The Connectable Strategy Plus enhances risk mitigation within the connectable system through its advanced features and capabilities:
• Refined Signal Input Management: Tailor and precisely connect up to two signal filters with enhanced input flexibility, gain control, and strategic direction settings.
• Strategic Position Investment Control: Optimize positioning with versatile investment bases, custom investment percentages, and direction-specific investments for effective risk management.
• Advanced Exit Stop Loss Configuration: Implement custom stop loss tactics with diverse base modes and trailing options for tailored risk management.
• Strategic Exit Take Profit Settings: Apply precision-driven take profit strategies with various calculation modes and dynamic trailing functionality.
• Calibrated Entry Position Allocation: Optimize investment distribution for entry positions, including DCA and BRO trades, for strategic market response.
• Refined Order Setting Customization: Ensure exchange compliance with adjustable order settings, enhancing backtest accuracy and strategy reliability.
• Comprehensive Condition Settings: Define precise conditions for strategy execution, including date range filtering and order/loss limitations.
• Intuitive Visualization: Enhance strategy clarity with customizable visual elements and trade visualization features.
• Advanced Alert Configurations: Stay informed with comprehensive and customizable alerts for effective backend integration.
• Backend Integration With JSON Format: Leverage elaborate and structured data in JSON format for advanced analytics, enhancing decision-making and strategy optimization outside TradingView.
Let's review the separate parts of this indicator.
█ STRATEGY INPUTS
We've provided 2 inputs for connecting a signal filter or indicators or chains (1→, 2→) which are all set to 'Close' by default.
An input has several controls:
• Enable disable: Toggle the entire input on or off
• Input: Connect indicators or signal filter here, choose indicators with a compatible : Signal connector.
• G - Gain: Increase or reduce the strength of the incoming signal by a factor.
• SM - Signal Mode: Choose a trading direction compatible with the settings in your signal filter
• XM - Exit Mode: Determine when to allow to exit your open trade
○ Always: Doesn't take the restrictions into account, this ignores all the settings chosen in ML or MP
○ Restricted: Use both ML and MP conditions
○ Loss: Use the ML condition only, for example: Position will be exited and the exit signal will be allowed only when the loss exceeds the ML parameter
○ Profit: Use the MP condition only for example: Exits will only be allowed when the profit of the position exceeds the condition of the MP parameter
█ POSITION INVESTMENT
Determine the percentage of your trading budget you would like to use in each position based on the strategy's profit or loss.
• LINVB - Loss Investment Base: Choose which base to use to determine the investment percentage when the strategy is in a loss.
○ Equity: Use the equity as the base for percentage calculation.
○ Initial capital: Use the initial capital as the base for percentage calculation.
• LINV% - Loss Investment Percentage: Set a percentage of the chosen investment base as the investment for a new position.
○ For example, when 10% in loss, and a initial capital of $100, and the investment base is set to equity with a percentage of 50%, your investment will be 50% of $90, $45.
• PINVB - Profit Investment Base: Choose which base to use to determine the investment percentage when the strategy is in profit.
○ Equity: Use the equity as the base for percentage calculation.
○ Initial capital: Use the initial capital as the base for percentage calculation.
• PINV% - Profit Investment Percentage: Set a percentage of the chosen investment base as the investment for a new position.
○ For example, when 10% in profit, and an initial capital of $100, and the investment base is set to equity with a percentage of 100%, your investment will be 100% of $110, $110.
• XINVB - Custom Profit Investment Base: Choose which base to use to determine the investment percentage when the strategy is above a custom profit threshold (XT).
○ Equity: Use the equity as the base for percentage calculation.
○ Initial capital: Use the initial capital as the base for percentage calculation.
• XINV% - Custom Profit Investment Percentage: Set a percentage of the chosen investment base as the investment for a new position.
○ For example, when 100% in profit, exceeding the XT threshold of 50%, and an initial capital of $100, and the investment base is set to equity with a percentage of 50%, your investment will be 50% of $200, $100.
• XT% - Custom Profit Threshold: Determine how much profit triggers these custom profit investment settings.
• ELIB% - Entry Long Investment Base: Following previous settings, you can further restrict the investment according to the long trading direction.
○ For instance, if the previous calculation resulted in $45 to be used as an investment, and you've set the ELIB% to 50%, your long position will use 50% of $45, which is $22.5.
• ESIB% - Entry Short Investment Base: Following previous settings, you can further restrict the investment according to the short trading direction.
○ For example, if the previous calculation resulted in $45 to be used as an investment, and you've set the ESIB% to 50%, your short position will use 50% of $45, which is $22.5.
• RISK% - Risk Percentage:
○ Determine how much of the calculated position investment is at risk when the stop-loss is hit.
- For example, 1% of $45 represents a maximum loss of $0.45.
○ Risk percentage works together with the stop loss and the max leverage.
• MXLVG - Maximum Leverage:
○ Investigate the trading rules for your trading pair and use the maximum allowed amount of leverage.
○ To determine the number of contracts to be bought or sold, considering the stop loss and the specified risk percentage, the maximum leverage available will constrain the amount of leverage utilized to ensure that the maximum risk threshold is not exceeded. For instance, suppose the stop loss is set at 1%, and the risk percentage is defined as 10%. Initially, the calculated leverage to be used would be 10. However, if there is a maximum leverage cap set at 5, it would constrain the calculated leverage of 10 to adhere to the maximum limit of 5.
█ EXIT STOP LOSS
Determine the Stop Loss price based on your selected configuration.
As the stop loss is an integral part of the ordered contracts calculation used in conjunction with the Risk and Max leverage, you'll always need to provide a stop loss price.
• SLLB - Stop Loss Long Base: Choose a stop loss mode for calculating stop loss prices in long positions.
○ Risk: Determines the price using the Risk parameter (RISK%) and maximum leverage (MXLVG). In this case, SLLB% will not have any impact.
○ Price Entry + Offset: Calculates the stop loss price based on a offset percentage (SLLB%) from the entry price of the position.
○ Source: Computes the stop loss price based on an external indicator defined in SLLSRC.
- If this results in an invalid price, the calculation will revert to using the price entry + offset.
○ Source + Offset: Determines the stop loss price based on a positive or negative offset percentage (SLLB%) from an external indicator defined in SLLSRC.
- If this results in an invalid price, the calculation will fall back to using the price entry + offset.
• SLLB% - Stop Loss Long Base Percentage: Define an offset percentage that will be applied in the price entry + offset and source + offset stop loss modes.
• SLLSRC - Stop Loss Long Source: Connect an external indicator as the source for stop loss (only those providing price values eg: bollinger bands, moving averages...).
• SLLT - Stop Loss Long Trailing:
○ Fixed: The initial stop loss will be kept and no trailing stop loss will be applied.
○ Trail Stop: Takes into account all settings defined in SLLB and SLLB% and recalculates them with each candle.
- If a better stop loss is computed, it replaces the existing stop loss. In this mode SLLT% will be disregarded.
○ Trail Stop till BE: Similar to trailing stop mode, but it stops trailing when the stop loss reaches the break-even point.
○ Trail Stop from BE: Similar to trailing stop mode, but it starts trailing when the stop loss reaches the break-even point.
○ Trail Price: Computes the trailing stop loss price based on an offset percentage (SLLT%) from the closing price of the current candle.
- If a better stop loss price is calculated, it will be set as the new stop loss price.
○ Trail Price till BE: Similar to the Trail Price mode, but it stops trailing when the stop loss reaches the break-even point.
○ Trail Price from BE: Similar to Trail Price mode, but it starts trailing when the stop loss reaches the break-even point.
○ Trail Incr: Adapts the trailing stop loss price based on the offset percentage (SLLT%).
- Each price change in favor of your position will incrementally adapt the trailing stop loss with SLLT%.
○ Trail Incr till BE: Similar to the Trail Incr mode, but it stops trailing when the stop loss reaches the break-even point.
• SLLT% - Stop Loss Long Trailing Percentage: This percentage serves as an offset or increment depending on your chosen trailing mode.
• SLSB - Stop Loss Short Base: Functions similarly to SLLB but for short positions.
• SLSB% - Stop Loss Short Base Percentage: Functions similarly to SLLB% but for short positions.
• SLSSRC - Stop Loss Short Source: Functions similarly to SLLSRC but for short positions.
• SLST - Stop Loss Short Trailing: Functions similarly to SLLT but for short positions.
• SLST% - Stop Loss Short Trailing Percentage: Functions similarly to SLLT% but for short positions.
█ EXIT TAKE PROFIT
Determine the Take Profit price based on your selected configuration.
• TPLB - Take Profit Long Base: Choose a take profit mode for calculating take profit prices in long positions.
○ Reward: Determines the take profit price using the Risk parameter (RISK%) and the calculated Stop Loss price and the set reward percentage (TPLB%).
- For example: Risk 1%, Calculated Stop loss price: $90, Entry price: $100, Reward (TPLB%): 2%, will result in a take profit price on $120.
○ Price Entry + Offset: Calculates the take profit price based on a offset percentage (TPLB%) from the entry price of the position.
- For example: Entry price: $100, Offset (TPLB%): 2%, will result in a take profit price on $102.
○ Source: Computes the take profit price based on an external input from another indicator defined in TPLSRC.
- If this results in an invalid price, the calculation will revert to using the price entry + offset.
○ Source + Offset: Determines the take profit price based on a positive or negative offset percentage (TPLB%) from an external indicator inpuy defined in TPLSRC.
- If this results in an invalid price, the calculation will fall back to using the price entry + offset.
• TPLB% - Take Profit Long Base Percentage: Define an offset percentage that will be applied in the price entry + offset and source + offset take profit modes.
• TPLSRC - Take Profit Long Source: Choose to connect an external indicator as the source for take profit (of course only those which provide price values eg: bollinger bands, moving averages... but not oscillators).
• TPLT - Take Profit Long Trailing:
○ Fixed: The initial take profit will be kept and no trailing take profit will be applied.
○ Trail Profit: Takes into account all settings defined in TPLB and TPLB% and recalculates them with each candle.
- If an applicable take profit is computed, it replaces the existing take profit. In this mode TPLT% will be disregarded.
○ Trail Profit till BE: Similar to trailing profit mode, but it stops trailing when the take profit reaches the break-even point.
○ Trail Profit from BE: Similar to trailing profit mode, but it starts trailing when the take profit reaches the break-even point.
○ Trail Price: Computes the trailing take profit price based on an offset percentage (TPLT%) from the closing price of the current candle.
- If an applicable take profit price is calculated, it will be set as the new take profit price.
○ Trail Price till BE: Similar to the Trail Price mode, but it stops trailing when the take profit reaches the break-even point.
○ Trail Price from BE: Similar to Trail Price mode, but it starts trailing when the take profit reaches the break-even point.
○ Trail Incr: Adapts the trailing take profit price based on the offset percentage (TPLT%). Each price change against your position will incrementally adapt the trailing take profit with TPLT%.
○ Trail Incr till BE: Similar to the Trail Incr mode, but it stops trailing when the take profit reaches the break-even point.
• TPLT% - Take Profit Long Trailing Percentage: This percentage serves as an offset or increment depending on your chosen trailing mode.
• TPSB - Take Profit Short Base: Functions similarly to TPLB but for short positions.
• TPSB% - Take Profit Short Base Percentage: Functions similarly to TPLB% but for short positions.
• TPSSRC - Take Profit Short Source: Functions similarly to TPLSRC but for short positions.
• TPST - Take Profit Short Trailing: Functions similarly to TPLT but for short positions.
• TPST% - Take Profit Short Trailing Percentage: Functions similarly to TPLT% but for short positions.
█ ENTRY INVESTMENT DISTRIBUTION
Based on your position investment calculation you can distribute the position investment accross the initial opening trade of the position (SIG%) or the follow up Dollar Cost Averaging (DCA%) or Break Out (BRO%) trades.
For example: SIG%: 10%, DCA%: 45%, BRO%: 45% and the calculated Position Investment is $100, then the initial trade will receive $10, DCA will receive $45, and BRO will receive $45 to work with. Disable BRO and or DCA by setting them to 0%. Keep in mind that the sum of SIG, BRO and DCA may not exceed 100%.
• SIG% - Initial order investment percentage based on the signal: The percentage of the position investment distributed over normal trades.
• DCA% - Dollar Cost Averaging investment percentage: The percentage of the position investment distributed to DCA trades.
• BRO% - Break Out investment percentage: The percentage of the position investment distributed to BRO trades.
█ ENTRY DCA
DCA (Dollar-Cost Averaging) is a risk mitigation strategy where the allocated DCA% budget from the Entry Investment Distribution is distributed among x levels (DCA#) based on calculated prices (DPLM) and order sizes (DOSM), when prices move against your position.
• DCA# - Maximum DCA levels: Set the maximum number of DCA levels.
• DPLM - DCA Price Level Mode: Choose a price level mode that determines at which prices the additional purchases are distributed:
○ Linear: Entry prices are evenly spaced at regular intervals.
○ QuadIn: Entry prices are front-loaded, with more at the beginning and fewer later.
○ QuadOut: Entry prices are back-loaded, with fewer at the beginning and more later.
○ QuadInOut: Entry prices start front-loaded, then become back-loaded.
○ CubicIn: Similar to QuadIn but with a smoother front-loaded distribution.
○ CubicOut: Similar to QuadOut but with a smoother back-loaded distribution.
○ ExpoIn: Entry prices are exponentially increasing, starting small and growing.
○ ExpoOut: Entry prices are exponentially decreasing, starting large and reducing.
○ ExpoInOut: Entry prices start exponentially increasing, then decrease exponentially.
• DOSM - DCA Order Size Mode: Choose a DCA budget distribution mode for order sizes:
○ Linear: Order sizes are evenly spaced at regular intervals.
○ QuadIn: Order sizes are front-loaded, with larger orders at the beginning and smaller ones later.
○ QuadOut: Order sizes are back-loaded, with smaller orders at the beginning and larger ones later.
○ QuadInOut: Order sizes start front-loaded and transition to back-loaded.
○ CubicIn: Similar to QuadIn but with a smoother front-loaded distribution of order sizes.
○ CubicOut: Similar to QuadOut but with a smoother back-loaded distribution of order sizes.
○ ExpoIn: Order sizes exponentially increase, starting small and growing.
○ ExpoOut: Order sizes exponentially decrease, starting large and reducing.
○ ExpoInOut: Order sizes start exponentially increasing, then decrease exponentially.
For a visual representation of the price or order size distribution modes, refer to online easing curves.
█ ENTRY BRO
BRO (Break Out) is a risk mitigation strategy where the allocated BRO% budget from the Entry Investment Distribution is distributed among x levels (BRO#) based on calculated prices (BPLM) and order sizes (BOSM), when prices move in favor of your position.
• BRO# - Maximum BRO levels: Set the maximum number of BRO levels.
• BPLM - BRO Price Level Mode: Choose a price level mode that determines at which prices the additional purchases are distributed:
○ Distribution easing modes work similar as the DCA easing modes.
• BOSM - BRO Order Size Mode: Choose a BRO budget distribution mode for order sizes:
○ Distribution easing modes work similar as the DCA easing modes.
█ ORDER SETTINGS
Fine-tune accuracy to match your exchange's trading constraints, enhancing backtest precision with these settings, default settings are least restrictive for crypto trading pairs.
• MINP - Mininmum Position Notional Value: Exchange-defined minimum notional value for positions:
○ Calculated based on your exchange's rules and is the minimum total value your position must hold to meet their requirements It is calculated by multiplying Quantity with price and leverage.
○ It helps ensure your trades align with your exchange's standards.
• MAXP - Maximum Position Notional Value: Exchange-defined maximum notional value for positions:
○ Similar to MINP, this value is calculated based on your exchange's rules and represents the maximum total value allowed for your position.
• MINQ - Mininmum Order Quantity: Least permissible order quantity based on exchange rules:
○ This is the smallest quantity of an asset that your exchange allows you to trade in a single order.
• MAXQ - Maximum Order Quantity: Highest permissible order quantity according to exchange rules:
○ Opposite of MINQ, this is the largest quantity of an asset you can trade in a single order as defined by your exchange.
• DECP - Decimals in Order Price: Allowed decimal places in order prices as per exchange specifications:
○ This value specifies the number of decimal places you can use when specifying the price of an order.
• DECQ - Decimals in Order Quantity: Permitted decimal places in order quantities according to exchange specifications:
○ Similar to DECP, this value indicates the number of decimal places you can use when specifying the quantity of an asset in an order.
█ STRATEGY CONDITIONS
Specify when the strategy is permitted to execute trades.
• DATE: Enable the Date Range filter to restrict entries to a specific date range.
○ START: Set a start date and hour to commence trading.
○ END: Set an end date and hour to conclude trading within the defined range.
• IDO - Maximum Intraday Orders: Limit the number of orders the strategy can place within a single trading day. Upon reaching this limit, the strategy temporarily halts further entries for the day.
• DL% - Maximum Intraday Loss%: Set a threshold for the maximum allowable intraday loss as a percentage of equity. When exceeded, the strategy temporarily suspends trading for the day.
• CLD - Maximum Consecutive Loss Days: Define the maximum number of consecutive days the strategy can incur losses. Upon reaching this limit, the strategy halts trading and avoids new entries.
• DD% - Maximum Drawdown: Specify the maximum permissible drawdown as a percentage of equity. If this limit is met, the strategy halts trading and refrains from placing additional entries.
• TP% - Total Profit %: Establish a target for the total profit percentage the strategy aims to achieve. Once this target is attained, the strategy halts trading and refrains from initiating new entries.
• TL% - Total Loss %: Define a limit for the total loss percentage relative to the initial capital. If this limit is exceeded, the strategy discontinues trading and refrains from placing further entries.
■ VISUALS
• LINE: Activate a colored dashed diagonal line to visually connect the entry and exit points of positions.
• SLTP: Enable visualization of stop loss, take profit, and break-even levels.
• PNL: Enable Break-Even and Close Lines along with a colored area in between to visualize profit and loss.
• ☼: Brightness % : Adjust the opacity of the plotted trading visuals.
• P - Profit Color : Choose the color for profit-related elements.
• L - Loss Color: Choose the color for loss-related elements.
• B - Breakeven Color : Select the color for break-even points.
• EL - Long Color: Specify the color for long positions.
• ES - Short Color: Specify the color for short positions.
• TRADE LABELING: For better analysis we've labeled all entries and exits conform with the type of order your strategy has executed, some examples:
○ EL-SIG0-124: Enter Long - Signal 0 - Position 124
○ EL-BRO1-130: Enter Long - BRO1 - Position 130
○ EL-BRO2-130: Enter Long - BRO2 - Position 130
○ ES-DCA1-140: Enter Short - DCA1 - Position 140
○ XS-DCA2-140: Exit Short - DCA2 - Position 140
○ XL-TP-150: Exit Long - Take Profit - Position 150
○ XS-TP-154: Exit Short - Take Profit - Position 154
○ XL-SL-160: Exit Long - Stop Loss - Position 160
○ XS-SL-164: Exit Short - Stop Loss - Position 164
○ XS-CND-165: Exit Short - Strategy Condition - Max intraday loss - Position 165
■ ALERT SETTINGS
For developers and those who wish to integrate TradingView alerts into their backend systems, we offer comprehensive labeling options.
• ALID: A unique identifier you've assigned to your alert.
• NAME: A structured name you've given to this strategy.
• LAYOUT: The layout key of the strategy, allowing direct chart linking from your backend.
• SYMBOL: The symbol on which the strategy operates.
○ ONCE: You can choose to include this information only in the first message to reduce message size and repetition in follow-up messages. (max. 4096 characters)
• TICK: The ticker for the strategy.
• CHART: The chart parameter containing the timeframe.period and timeframe.multiplier.
○ ONCE: You can choose to include this information only in the first message to reduce message size and repetition in follow-up messages. (max. 4096 characters)
• BAR: Includes bar information in the alert message.
• STRATEGY: Adds strategy inputs to the alert message.
○ ONCE: You can choose to include this information only in the first message to reduce message size and repetition in follow-up messages. (max. 4096 characters)
• PERFORMANCE: Incorporates strategy performance data into the alert message.
• SIGNAL: Appends received signal weights (EL, XL, ES, XS) to the alert message.
• ORDERS: Includes order details in the alert message.
• TAGS: Adds up to 6 tags and their corresponding values to the alert message.
○ ONCE: You can choose to include this information only in the first message to reduce message size and repetition in follow-up messages. (max. 4096 characters)
Of course we can't neglect letting you in on how this juicy JSON would look (without the // comments):
{
"id": 20726, // Message Id
"t": "2023-11-01T10:35:00Z", // Message Time
"al": { // Alert
"id": "639bfa9a-5f01-4031-8880-7ec01e972055", // Alert Id
"n": "TEST04", // Name
"l": "ABC123" // Layout
},
"sym": { // Symbol
"typ": "crypto", // Type
"r": "DOGEUSD.PM", // Root
"pre": "KRAKEN", // Prefix
"tc": "DOGEUSD.PM", // Ticker
"bc": "DOGE", // BaseCurrency
"c": "USD", // Currency
"d": "DOGEUSD Multi Collateral Perpetual Futures Contract", // Description
"mtc": 0.000001, // MinTick
"pv": 1, // PointValue
"ct": "PF_DOGEUSD" // CustomTicker
},
"ch": { // Chart
"pd": "1", // Period
"mul": 1 // Multiplier
},
"bar": { // Bar
"id": 20725, // Index
"t": "2023-11-01T10:33:00Z", // Time
"o": 0.066799, // Open
"h": 0.066799, // High
"l": 0.066799, // Low
"c": 0.066799, // Close
"v": 2924 // Vol
},
"strat": { // Strategy
"n": "Strategy - Plus / Connectable ", // Name
"sig": { // Signal
"c1e": true, // Connector1Enabled
"c1s": 500500.500501, // Connector1Source
"c1g": 1, // Connector1Gain
"c2e": false, // Connector2Enabled
"c2s": 0.067043, // Connector2Source
"c2g": 1, // Connector2Gain
"sm": "Swing (EL, ES)", // SignalMode
"xm": "Always", // ExitMode
"mlp": 0.01, // ExitModeMinPercLoss
"mpp": 0.01 // ExitModeMinPercProfit
},
"inv": { // Investment
"lb": "Equity", // LossBase
"lp": 50, // LossPerc
"pb": "Equity", // ProfitBase
"pp": 100, // ProfitPerc
"pcb": "Equity", // ProfitCustomBase
"pcp": 100, // ProfitCustomPerc
"pct": 10000, // ProfitCustomThreshold
"elp": 100, // LongPerc
"esp": 100, // ShortPerc
"rsk": 1, // MaxRisk
"lvg": 10 // MaxLeverage
},
"sl": { // StopLoss
"lb": "Price Entry + Offset", // LongBase
"lp": 0.2, // LongPerc
"lsrc": 0.067043, // LongSource
"lt": "Trail Stop", // LongTrailMode
"ltp": 0.2, // LongTrailPerc
"sb": "Price Entry + Offset", // ShortBase
"sp": 0.2, // ShortPerc
"ssrc": 0.067043, // ShortSource
"st": "Trail Stop", // ShortTrailMode
"stp": 0.2 // ShortTrailPerc
},
"tp": { // TakeProfit
"lb": "Price Entry + Offset", // LongBase
"lp": 1, // LongPerc
"lsrc": 0.067043, // LongSource
"lt": "Fixed", // LongTrailMode
"ltp": 1, // LongTrailPerc
"sb": "Price Entry + Offset", // ShortBase
"sp": 1, // ShortPerc
"ssrc": 0.067043, // ShortSource
"st": "Fixed", // ShortTrailMode
"stp": 1 // ShortTrailPerc
},
"dis": { // Distribution
"sigp": 10, // SignalPerc
"dcap": 0, // DCAPerc
"brop": 90 // BROPerc
},
"dca": { // DCA
"lvl": 3, // Levels
"pl": "linear", // ModePriceLevel
"os": "linear" // ModeOrderSize
},
"bro": { // BRO
"lvl": 3, // Levels
"pl": "expoIn", // ModePriceLevel
"os": "cubicOut" // ModeOrderSize
},
"ord": { // OrderSettings
"pmin": 5, // PNVMin
"pmax": 30000000, // PNVMax
"qmin": 0, // QtyMin
"qmax": 1000000000, // QtyMax
"dp": 6, // DecPrice
"dq": 6 // DecQty
},
"cnd": { // Conditions
"de": true, // DateRangeEnabled
"start": "2023-11-01T10:30:00Z", // StartTime
"end": "2024-12-31T23:30:00Z", // EndTime
"idoe": false, // MaxIntradayOrdersEnabled
"ido": 100, // MaxIntradayOrders
"dle": false, // MaxIntradayLossEnabled
"dl": 10, // MaxIntradayLossPerc
"clde": false, // MaxConsLossDaysEnabled
"cld": false, // MaxConsLossDays
"dde": false, // MaxDrawdownEnabled
"dd": 100, // MaxDrawdownPerc
"mpe": false, // MaxProfitEnabled
"mp": 200, // MaxProfitPerc
"mle": false, // MaxLossEnabled
"ml": -50 // MaxLossPerc
}
},
"perf": { // Performance
"ic": 1000, // InitialCapital
"eq": 1000, // Equity
"np": 0, // NetProfit
"op": 0, // OpenProfit
"ct": 0, // ClosedTrades
"ot": 0, // OpenTrades
"p": "FLAT", // MarketPosition
"ps": 0, // MarketPositionSize
"pp": "FLAT", // PreviousMarketPosition
"pps": 0 // PreviousMarketPositionSize
},
"sig": { // Signal
"el": 0, // EL
"xl": 0, // XL
"es": 6, // ES
"xs": 0 // XS
},
"ord": ,
"tag":
}
█ USAGE OF CONNECTABLE INDICATORS
■ Connectable chaining mechanism
Connectable indicators can be connected directly to the signal monitor, signal filter or strategy , or they can be daisy chained to each other while the last indicator in the chain connects to the signal monitor, signal filter or strategy. When using a signal filter you can chain the filter to the strategy input to make your chain complete.
• Direct chaining: Connect an indicator directly to the signal monitor, signal filter or strategy through the provided inputs (→).
• Daisy chaining: Connect indicators using the indicator input (→). The first in a daisy chain should have a flow (⌥) set to 'Indicator only'. Subsequent indicators use 'Both' to pass the previous weight. The final indicator connects to the signal monitor, signal filter, or strategy.
■ Set up this indicator with signals and a signal filter
The indicator provides visual cues based on signal conditions. However, its weight system is best utilized when paired with a connectable signal filter, monitor, or strategy .
Let's connect the Strategy - Plus to a connectable signal filter and connectable indicators :
1. Load all relevant indicators
• Load MA - Plus / Connectable
• Load Signal filter - Plus / Connectable
• Load Strategy - Plus / Connectable
2. Signal Filter Plus: Connect the MA - Plus to the Signal Filter
• Open the signal filter settings
• Choose one of the five input dropdowns (1→, 2→, 3→, 4→, 5→) and choose : MA - Plus / Connectable: Signal Connector
• Toggle the enable box before the connected input to enable the incoming signal
3. Signal Filter: Update the filter settings if needed
• The default filter mode for the trading direction is SWING, and is compatible with the default settings in the strategy and indicators.
4. Signal Filter: Update the weight threshold settings if needed
• All connectable indicators load by default with a score of 6 for each direction (EL, XL, ES, XS)
• By default, weight threshold is 'ABOVE' Threshold 1 (TH1) and Threshold 2 (TH2), both set at 5. This allows each occurrence to score, as the default score is 1 point above the threshold.
5. Strategy Plus: Connect one of the strategy plus inputs to the signal filters signal connector in the strategy settings
• Select a strategy input → and select the Signal filter - Plus: Signal connector
6. Strateg Plus: Enable filter compatible directions
• As the default setting of the filter is SWING, we should also set the SM (Strategy mode) to SWING.
7. Strateg Plus: You're ready to start optimizing
• Dive into all parameters and start optimizing your backtesting results.
█ BENEFITS
• Adaptable Modular Design: Arrange indicators in diverse structures via direct or daisy chaining, allowing tailored configurations to align with your analysis approach.
• Streamlined Backtesting: Simplify the iterative process of testing and adjusting combinations, facilitating a smoother exploration of potential setups.
• Intuitive Interface: Navigate TradingView with added ease. Integrate desired indicators, adjust settings, and establish alerts without delving into complex code.
• Signal Weight Precision: Leverage granular weight allocation among signals, offering a deeper layer of customization in strategy formulation.
• Advanced Signal Filtering: Define entry and exit conditions with more clarity, granting an added layer of strategy precision.
• Clear Visual Feedback: Distinct visual signals and cues enhance the readability of charts, promoting informed decision-making.
• Standardized Defaults: Indicators are equipped with universally recognized preset settings, ensuring consistency in initial setups across different types like momentum or volatility.
• Reliability: Our indicators are meticulously developed to prevent repainting. We strictly adhere to TradingView's coding conventions, ensuring our code is both performant and clean.
█ COMPATIBLE INDICATORS
Each indicator that incorporates our open-source 'azLibConnector' library and adheres to our conventions can be effortlessly integrated and used as detailed above.
For clarity and recognition within the TradingView platform, we append the suffix ' / Connectable' to every compatible indicator.
█ COMMON MISTAKES, CLARIFICATIONS AND TIPS
• Removing an indicator from a chain: Deleting a linked indicator and confirming the "remove study tree" alert will also remove all underlying indicators in the object tree. Before removing one, disconnect the adjacent indicators and move it to the object stack's bottom.
• Point systems: The azLibConnector provides 500 points for each direction (EL: Enter long, XL: Exit long, ES: Enter short, XS: Exit short) Remember this cap when devising a point structure.
• Flow misconfiguration: In daisy chains the first indicator should always have a flow (⌥) setting of 'indicator only' while other indicator should have a flow (⌥) setting of 'both'.
• Hide attributes: As connectable indicators send through quite some information you'll notice all the arguments are taking up some screenwidth and cause some visual clutter. You can disable arguments in Chart Settings / Status line.
• Layout and abbreviations: To maintain a consistent structure, we use abbreviations for each input. While this may initially seem complex, you'll quickly become familiar with them. Each abbreviation is also explained in the inline tooltips.
• Inputs: Connecting a connectable indicator directly to the strategy delivers the raw signal without a weight threshold, meaning every signal will trigger a trade.
• Layout and Abbreviations: Abbreviations streamline structure and input identification. Although they may seem complex initially, inline tooltips provide explanations, facilitating quick acclimatization.
• Total Trade Limit Error & Date-Time Filter: For deep backtesting, be mindful of the total trade limit. Utilize the date-time filter to narrow the test scope and avoid TradingView order limits.
• Calculation Timeout: Encounter a timeout? Adjust any parameter slightly to restart the calculation process.
• Message Character Limit: To stay within message character limits, consider turning off certain features or setting some to 'once'.
• Direct Indicator-to-Strategy Connection: When connecting an indicator directly to a strategy without thresholds, the strategy will default to long if weights are equally assigned.
• Pyramid Enabling with DCA and BRO: Activate pyramid orders, enabling you to optimize your strategy during Dollar Cost Averaging and Break Out trades.
• Recalculate & Fill Orders Properties: Adjusting these default settings in strategy properties tab may lead to unexpected behavior when backtesting. Approach with caution.
• Optimized for Crypto: Our indicators have been optimized and tested primarily on cryptocurrency markets. Results in other markets may vary.
• Inline Tooltips Documentation: Detailed documentation and guidance are available via inline tooltips for immediate assistance.
• Strategy Settings Margin: Set margin to 1 to be able to apply leverage.
• Styling Panel: Explore the styling panel to disable labels or any other visual cues to reduce clutter on busy charts, enhancing visual clarity and personalization.
• Applying Leverage on Spot Markets: Ensure that maximum leverage on spot markets is configured to 1.
• Unrealistic Order Sizes: Verify that the order book can accommodate your backtested order sizes.
█ A NOTE OF GRATITUDE
Through years of exploring TradingView and Pine Script, we've drawn immense inspiration from the community's knowledge and innovation. Thank you for being a constant source of motivation and insight.
█ RISK DISCLAIMER
Azullian's content, tools, scripts, articles, and educational offerings are presented purely for educational and informational uses. Please be aware that past performance should not be considered a predictor of future results.
Machine Learning: SuperTrend Strategy TP/SL [YinYangAlgorithms]The SuperTrend is a very useful Indicator to display when trends have shifted based on the Average True Range (ATR). Its underlying ideology is to calculate the ATR using a fixed length and then multiply it by a factor to calculate the SuperTrend +/-. When the close crosses the SuperTrend it changes direction.
This Strategy features the Traditional SuperTrend Calculations with Machine Learning (ML) and Take Profit / Stop Loss applied to it. Using ML on the SuperTrend allows for the ability to sort data from previous SuperTrend calculations. We can filter the data so only previous SuperTrends that follow the same direction and are within the distance bounds of our k-Nearest Neighbour (KNN) will be added and then averaged. This average can either be achieved using a Mean or with an Exponential calculation which puts added weight on the initial source. Take Profits and Stop Losses are then added to the ML SuperTrend so it may capitalize on Momentum changes meanwhile remaining in the Trend during consolidation.
By applying Machine Learning logic and adding a Take Profit and Stop Loss to the Traditional SuperTrend, we may enhance its underlying calculations with potential to withhold the trend better. The main purpose of this Strategy is to minimize losses and false trend changes while maximizing gains. This may be achieved by quick reversals of trends where strategic small losses are taken before a large trend occurs with hopes of potentially occurring large gain. Due to this logic, the Win/Loss ratio of this Strategy may be quite poor as it may take many small marginal losses where there is consolidation. However, it may also take large gains and capitalize on strong momentum movements.
Tutorial:
In this example above, we can get an idea of what the default settings may achieve when there is momentum. It focuses on attempting to hit the Trailing Take Profit which moves in accord with the SuperTrend just with a multiplier added. When momentum occurs it helps push the SuperTrend within it, which on its own may act as a smaller Trailing Take Profit of its own accord.
We’ve highlighted some key points from the last example to better emphasize how it works. As you can see, the White Circle is where profit was taken from the ML SuperTrend simply from it attempting to switch to a Bullish (Buy) Trend. However, that was rejected almost immediately and we went back to our Bearish (Sell) Trend that ended up resulting in our Take Profit being hit (Yellow Circle). This Strategy aims to not only capitalize on the small profits from SuperTrend to SuperTrend but to also capitalize when the Momentum is so strong that the price moves X% away from the SuperTrend and is able to hit the Take Profit location. This Take Profit addition to this Strategy is crucial as momentum may change state shortly after such drastic price movements; and if we were to simply wait for it to come back to the SuperTrend, we may lose out on lots of potential profit.
If you refer to the Yellow Circle in this example, you’ll notice what was talked about in the Summary/Overview above. During periods of consolidation when there is little momentum and price movement and we don’t have any Stop Loss activated, you may see ‘Signal Flashing’. Signal Flashing is when there are Buy and Sell signals that keep switching back and forth. During this time you may be taking small losses. This is a normal part of this Strategy. When a signal has finally been confirmed by Momentum, is when this Strategy shines and may produce the profit you desire.
You may be wondering, what causes these jagged like patterns in the SuperTrend? It's due to the ML logic, and it may be a little confusing, but essentially what is happening is the Fast Moving SuperTrend and the Slow Moving SuperTrend are creating KNN Min and Max distances that are extreme due to (usually) parabolic movement. This causes fewer values to be added to and averaged within the ML and causes less smooth and more exponential drastic movements. This is completely normal, and one of the perks of using k-Nearest Neighbor for ML calculations. If you don’t know, the Min and Max Distance allowed is derived from the most recent(0 index of data array) to KNN Length. So only SuperTrend values that exhibit distances within these Min/Max will be allowed into the average.
Since the KNN ML logic can cause these exponential movements in the SuperTrend, they likewise affect its Take Profit. The Take Profit may benefit from this movement like displayed in the example above which helped it claim profit before then exhibiting upwards movement.
By default our Stop Loss Multiplier is kept quite low at 0.0000025. Keeping it low may help to reduce some Signal Flashing while not taking extra losses more so than not using it at all. However, if we increase it even more to say 0.005 like is shown in the example above. It can really help the trend keep momentum. Please note, although previous results don’t imply future results, at 0.0000025 Stop Loss we are currently exhibiting 69.27% profit while at 0.005 Stop Loss we are exhibiting 33.54% profit. This just goes to show that although there may be less Signal Flashing, it may not result in more profit.
We will conclude our Tutorial here. Hopefully this has given you some insight as to how Machine Learning, combined with Trailing Take Profit and Stop Loss may have positive effects on the SuperTrend when turned into a Strategy.
Settings:
SuperTrend:
ATR Length: ATR Length used to create the Original Supertrend.
Factor: Multiplier used to create the Original Supertrend.
Stop Loss Multiplier: 0 = Don't use Stop Loss. Stop loss can be useful for helping to prevent false signals but also may result in more loss when hit and less profit when switching trends.
Take Profit Multiplier: Take Profits can be useful within the Supertrend Strategy to stop the price reverting all the way to the Stop Loss once it's been profitable.
Machine Learning:
Only Factor Same Trend Direction: Very useful for ensuring that data used in KNN is not manipulated by different SuperTrend Directional data. Please note, it doesn't affect KNN Exponential.
Rationalized Source Type: Should we Rationalize only a specific source, All or None?
Machine Learning Type: Are we using a Simple ML Average, KNN Mean Average, KNN Exponential Average or None?
Machine Learning Smoothing Type: How should we smooth our Fast and Slow ML Datas to be used in our KNN Distance calculation? SMA, EMA or VWMA?
KNN Distance Type: We need to check if distance is within the KNN Min/Max distance, which distance checks are we using.
Machine Learning Length: How far back is our Machine Learning going to keep data for.
k-Nearest Neighbour (KNN) Length: How many k-Nearest Neighbours will we account for?
Fast ML Data Length: What is our Fast ML Length?? This is used with our Slow Length to create our KNN Distance.
Slow ML Data Length: What is our Slow ML Length?? This is used with our Fast Length to create our KNN Distance.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
[blackcat] L1 MartinGale Scalping Strategy**MartinGale Strategy** is a popular money management strategy used in trading. It is commonly applied in situations where the trader aims to recover from a losing streak by increasing the position size after each loss.
In the MartinGale Strategy, after a losing trade, the trader doubles the position size for the next trade. This is done in the hopes that a winning trade will eventually occur, which will not only recover the previous losses but also generate a profit.
The idea behind the MartinGale Strategy is to take advantage of the law of averages. By increasing the position size after each loss, the strategy assumes that eventually, a winning trade will occur, which will not only cover the previous losses but also generate a profit. This can be especially appealing for traders looking for a quick recovery from a losing streak.
However, it is important to note that the MartinGale Strategy carries significant risks. If a trader experiences a prolonged losing streak or lacks sufficient capital, the strategy can lead to substantial losses. The strategy's reliance on the assumption of a winning trade can be dangerous, as there is no guarantee that a winning trade will occur within a certain timeframe.
Traders considering implementing the MartinGale Strategy should carefully assess their risk tolerance and thoroughly understand the potential drawbacks. It is crucial to have a solid risk management plan in place to mitigate potential losses. Additionally, traders should be aware that the strategy may not be suitable for all market conditions and may require adjustments based on market volatility.
In summary, the MartinGale Strategy is a money management strategy that involves increasing the position size after each loss in an attempt to recover from a losing streak. While it can offer the potential for quick recovery, it also comes with significant risks that traders should carefully consider before implementing it in their trading approach.
The MartinGale Scalping Strategy is a trading strategy designed to generate profits through frequent trades. It utilizes a combination of moving average crossovers and crossunders to generate entry and exit signals. The strategy is implemented in TradingView's Pine Script language.
The strategy begins by defining input variables such as take profit and stop loss levels, as well as the trading mode (long, short, or bidirectional). It then sets a rule to allow only long entries if the trading mode is set to "Long".
The strategy logic is defined using SMA (Simple Moving Average) crossover and crossunder signals. It calculates a short-term SMA (SMA3) and a longer-term SMA (SMA8), and plots them on the chart. The crossoverSignal and crossunderSignal variables are used to track the occurrence of the crossover and crossunder events, while the crossoverState and crossunderState variables determine the state of the crossover and crossunder conditions.
The strategy execution is based on the current position size. If the position size is zero (no open positions), the strategy checks for crossover and crossunder events. If a crossover event occurs and the trading mode allows long entries, a long position is entered. The entry price, stop price, take profit price, and stop loss price are calculated based on the current close price and the SMA8 value. Similarly, if a crossunder event occurs and the trading mode allows short entries, a short position is entered with the corresponding price calculations.
If there is an existing long position and the current close price reaches either the take profit price or the stop loss price, and a crossunder event occurs, the long position is closed. The entry price, stop price, take profit price, and stop loss price are reset to zero.
Likewise, if there is an existing short position and the current close price reaches either the take profit price or the stop loss price, and a crossover event occurs, the short position is closed and the price variables are reset.
The strategy also plots entry and exit points on the chart using plotshape function. It displays a triangle pointing up for a buy entry, a triangle pointing down for a buy exit, a triangle pointing down for a sell entry, and a triangle pointing up for a sell exit.
Overall, the MartinGale Scalping Strategy aims to capture small profits by taking advantage of short-term moving average crossovers and crossunders. It incorporates risk management through take profit and stop loss levels, and allows for different trading modes to accommodate different market conditions.
GKD-BT Baseline Backtest [Loxx]The Giga Kaleidoscope GKD-BT Baseline Backtest is a backtesting module included in Loxx's "Giga Kaleidoscope Modularized Trading System."
█ GKD-BT Baseline Backtest
The GKD-BT Baseline Backtest allows traders to backtest the Regular and Stepped baselines used in the GKD trading system. This module includes 65+ moving averages and 15+ types of volatility to choose from.
Additionally, this backtest module provides the option to test the GKD-B indicator with 1 to 3 take profits and 1 stop loss. The Trading backtest allows for the use of 1 to 3 take profits, while the Full backtest is limited to 1 take profit. The Trading backtest also offers the capability to apply a trailing take profit.
In terms of the percentage of trade removed at each take profit, this backtest module has the following hardcoded values:
Take profit 1: 50% of the trade is removed
Take profit 2: 25% of the trade is removed
Take profit 3: 25% of the trade is removed
Stop loss: 100% of the trade is removed
After each take profit is achieved, the stop loss level is adjusted. When take profit 1 is reached, the stop loss is moved to the entry point. Similarly, when take profit 2 is reached, the stop loss is shifted to take profit 1. The trailing take profit feature comes into play after take profit 2 or take profit 3, depending on the number of take profits selected in the settings. The trailing take profit is always activated on the final take profit when 2 or more take profits are chosen.
The backtest also offers the capability to restrict by a specific date range, allowing for simulated forward testing based on past data. Additionally, users have the option to display or hide a trading panel that provides relevant information about the backtest, statistics, and the current trade. It is also possible to activate alerts and toggle sections of the trading panel on or off. On the chart, historical take profit and stop loss levels are represented by horizontal lines overlaid for reference.
This backtest also includes an optional GKD-E Exit indicator that can be used to test early exits.
The GKD system utilizes volatility-based take profits and stop losses. Each take profit and stop loss is calculated as a multiple of volatility. You can change the values of the multipliers in the settings as well.
To utilize this strategy, follow these steps:
1. (Required) Import the value "Input into NEW GKD-BT Backtest" from the GKD-B Baseline indicator into the GKD-BT Baseline Backtest field "Import GKD-B Baseline"
2. (Optional) Import the value "Input into NEW GKD-BT Backtest" from the GKD-E Exit indicator into the GKD-BT Baseline Backtest field "Import GKD-E Exit". You can toggle the Exit on or off using the "Activate GKD-E Exit" option.
Baselines that are compatible with this backtest module:
GKD-B Baseline
GKD-B Stepped Baseline
Volatility Types Included
17 types of volatility are included in this indicator
Close-to-Close
Parkinson
Garman-Klass
Rogers-Satchell
Yang-Zhang
Garman-Klass-Yang-Zhang
Exponential Weighted Moving Average
Standard Deviation of Log Returns
Pseudo GARCH(2,2)
Average True Range
True Range Double
Standard Deviation
Adaptive Deviation
Median Absolute Deviation
Efficiency-Ratio Adaptive ATR
Mean Absolute Deviation
Static Percent
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
8. Metamorphosis - a technical indicator that produces a compound signal from the combination of other GKD indicators*
*(not part of the NNFX algorithm)
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
What is an Metamorphosis indicator?
The concept of a metamorphosis indicator involves the integration of two or more GKD indicators to generate a compound signal. This is achieved by evaluating the accuracy of each indicator and selecting the signal from the indicator with the highest accuracy. As an illustration, let's consider a scenario where we calculate the accuracy of 10 indicators and choose the signal from the indicator that demonstrates the highest accuracy.
The resulting output from the metamorphosis indicator can then be utilized in a GKD-BT backtest by occupying a slot that aligns with the purpose of the metamorphosis indicator. The slot can be a GKD-B, GKD-C, or GKD-E slot, depending on the specific requirements and objectives of the indicator. This allows for seamless integration and utilization of the compound signal within the GKD-BT framework.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v2.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
6. GKD-M - Metamorphosis module (Metamorphosis, Number 8 in the NNFX algorithm, but not part of the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data to A backtest module wherein the various components of the GKD system are combined to create a trading signal.
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: GKD-BT Baseline Backtest as shown on the chart above
Baseline: Hull Moving Average as shown on the chart above
Volatility/Volume: Hurst Exponent
Confirmation 1: Sherif's HiLo
Confirmation 2: uf2018
Continuation: Coppock Curve
Exit: Fisher Transform as shown on the chart above
Metamorphosis: Baseline Optimizer
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, GKD-M, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD system.
█ Giga Kaleidoscope Modularized Trading System Signals
Standard Entry
1. GKD-C Confirmation gives signal
2. Baseline agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Confirmation 2 agrees
6. Volatility/Volume agrees
1-Candle Standard Entry
1a. GKD-C Confirmation gives signal
2a. Baseline agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
Next Candle
1b. Price retraced
2b. Baseline agrees
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline gives signal
2. Confirmation 1 agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Confirmation 2 agrees
6. Volatility/Volume agrees
7. Confirmation 1 signal was less than 'Maximum Allowable PSBC Bars Back' prior
1-Candle Baseline Entry
1a. GKD-B Baseline gives signal
2a. Confirmation 1 agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
5a. Confirmation 1 signal was less than 'Maximum Allowable PSBC Bars Back' prior
Next Candle
1b. Price retraced
2b. Baseline agrees
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Volatility/Volume agrees
Volatility/Volume Entry
1. GKD-V Volatility/Volume gives signal
2. Confirmation 1 agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Confirmation 2 agrees
6. Baseline agrees
7. Confirmation 1 signal was less than 7 candles prior
1-Candle Volatility/Volume Entry
1a. GKD-V Volatility/Volume gives signal
2a. Confirmation 1 agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
5a. Confirmation 1 signal was less than 'Maximum Allowable PSVVC Bars Back' prior
Next Candle
1b. Price retraced
2b. Volatility/Volume agrees
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Baseline agrees
Confirmation 2 Entry
1. GKD-C Confirmation 2 gives signal
2. Confirmation 1 agrees
3. Price inside Goldie Locks Zone Minimum
4. Price inside Goldie Locks Zone Maximum
5. Volatility/Volume agrees
6. Baseline agrees
7. Confirmation 1 signal was less than 7 candles prior
1-Candle Confirmation 2 Entry
1a. GKD-C Confirmation 2 gives signal
2a. Confirmation 1 agrees
3a. Price inside Goldie Locks Zone Minimum
4a. Price inside Goldie Locks Zone Maximum
5a. Confirmation 1 signal was less than 'Maximum Allowable PSC2C Bars Back' prior
Next Candle
1b. Price retraced
2b. Confirmation 2 agrees
3b. Confirmation 1 agrees
4b. Volatility/Volume agrees
5b. Baseline agrees
PullBack Entry
1a. GKD-B Baseline gives signal
2a. Confirmation 1 agrees
3a. Price is beyond 1.0x Volatility of Baseline
Next Candle
1b. Price inside Goldie Locks Zone Minimum
2b. Price inside Goldie Locks Zone Maximum
3b. Confirmation 1 agrees
4b. Confirmation 2 agrees
5b. Volatility/Volume agrees
Continuation Entry
1. Standard Entry, 1-Candle Standard Entry, Baseline Entry, 1-Candle Baseline Entry, Volatility/Volume Entry, 1-Candle Volatility/Volume Entry, Confirmation 2 Entry, 1-Candle Confirmation 2 Entry, or Pullback entry triggered previously
2. Baseline hasn't crossed since entry signal trigger
4. Confirmation 1 agrees
5. Baseline agrees
6. Confirmation 2 agrees
GKD-BT Giga Confirmation Stack Backtest [Loxx]Giga Kaleidoscope GKD-BT Giga Confirmation Stack Backtest is a Backtesting module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-BT Giga Confirmation Stack Backtest
The Giga Confirmation Stack Backtest module allows users to perform backtesting on Long and Short signals from the confluence between GKD-C Confirmation 1 and GKD-C Confirmation 2 indicators. This module encompasses two types of backtests: Trading and Full. The Trading backtest permits users to evaluate individual trades, whether Long or Short, one at a time. Conversely, the Full backtest allows users to analyze either Longs or Shorts separately by toggling between them in the settings, enabling the examination of results for each signal type. The Trading backtest emulates actual trading conditions, while the Full backtest assesses all signals, regardless of being Long or Short.
Additionally, this backtest module provides the option to test using indicators with 1 to 3 take profits and 1 stop loss. The Trading backtest allows for the use of 1 to 3 take profits, while the Full backtest is limited to 1 take profit. The Trading backtest also offers the capability to apply a trailing take profit.
In terms of the percentage of trade removed at each take profit, this backtest module has the following hardcoded values:
Take profit 1: 50% of the trade is removed.
Take profit 2: 25% of the trade is removed.
Take profit 3: 25% of the trade is removed.
Stop loss: 100% of the trade is removed.
After each take profit is achieved, the stop loss level is adjusted. When take profit 1 is reached, the stop loss is moved to the entry point. Similarly, when take profit 2 is reached, the stop loss is shifted to take profit 1. The trailing take profit feature comes into play after take profit 2 or take profit 3, depending on the number of take profits selected in the settings. The trailing take profit is always activated on the final take profit when 2 or more take profits are chosen.
The backtest module also offers the capability to restrict by a specific date range, allowing for simulated forward testing based on past data. Additionally, users have the option to display or hide a trading panel that provides relevant information about the backtest, statistics, and the current trade. It is also possible to activate alerts and toggle sections of the trading panel on or off. On the chart, historical take profit and stop loss levels are represented by horizontal lines overlaid for reference.
To utilize this strategy, follow these steps:
1. Adjust the "Confirmation Type" in the GKD-C Confirmation 1 Indicator to "GKD New."
2. GKD-C Confirmation 1 Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-C Confirmation 1 module into the GKD-BT Giga Confirmation Stack Backtest module setting named "Import GKD-C Confirmation 1."
3. Adjust the "Confirmation Type" in the GKD-C Confirmation 2 Indicator to "GKD New."
4. GKD-C Confirmation 2 Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-C Confirmation 2 module into the GKD-BT Giga Confirmation Stack Backtest module setting named "Import GKD-C Confirmation 2."
█ Giga Confirmation Stack Backtest Entries
Entries are generated from the confluence of a GKD-C Confirmation 1 and GKD-C Confirmation 2 indicators. The Confirmation 1 gives the signal and the Confirmation 2 indicator filters or "approves" the the Confirmation 1 signal. If Confirmation 1 gives a long signal and Confirmation 2 shows a downtrend, then the long signal is rejected. If Confirmation 1 gives a long signal and Confirmation 2 shows an uptrend, then the long signal is approved and sent to the backtest execution engine.
█ Volatility Types Included
The GKD system utilizes volatility-based take profits and stop losses. Each take profit and stop loss is calculated as a multiple of volatility. Users can also adjust the multiplier values in the settings.
This module includes 17 types of volatility:
Close-to-Close
Parkinson
Garman-Klass
Rogers-Satchell
Yang-Zhang
Garman-Klass-Yang-Zhang
Exponential Weighted Moving Average
Standard Deviation of Log Returns
Pseudo GARCH(2,2)
Average True Range
True Range Double
Standard Deviation
Adaptive Deviation
Median Absolute Deviation
Efficiency-Ratio Adaptive ATR
Mean Absolute Deviation
Static Percent
Close-to-Close
Close-to-Close volatility is a classic and widely used volatility measure, sometimes referred to as historical volatility.
Volatility is an indicator of the speed of a stock price change. A stock with high volatility is one where the price changes rapidly and with a larger amplitude. The more volatile a stock is, the riskier it is.
Close-to-close historical volatility is calculated using only a stock's closing prices. It is the simplest volatility estimator. However, in many cases, it is not precise enough. Stock prices could jump significantly during a trading session and return to the opening value at the end. That means that a considerable amount of price information is not taken into account by close-to-close volatility.
Despite its drawbacks, Close-to-Close volatility is still useful in cases where the instrument doesn't have intraday prices. For example, mutual funds calculate their net asset values daily or weekly, and thus their prices are not suitable for more sophisticated volatility estimators.
Parkinson
Parkinson volatility is a volatility measure that uses the stock’s high and low price of the day.
The main difference between regular volatility and Parkinson volatility is that the latter uses high and low prices for a day, rather than only the closing price. This is useful as close-to-close prices could show little difference while large price movements could have occurred during the day. Thus, Parkinson's volatility is considered more precise and requires less data for calculation than close-to-close volatility.
One drawback of this estimator is that it doesn't take into account price movements after the market closes. Hence, it systematically undervalues volatility. This drawback is addressed in the Garman-Klass volatility estimator.
Garman-Klass
Garman-Klass is a volatility estimator that incorporates open, low, high, and close prices of a security.
Garman-Klass volatility extends Parkinson's volatility by taking into account the opening and closing prices. As markets are most active during the opening and closing of a trading session, it makes volatility estimation more accurate.
Garman and Klass also assumed that the process of price change follows a continuous diffusion process (Geometric Brownian motion). However, this assumption has several drawbacks. The method is not robust for opening jumps in price and trend movements.
Despite its drawbacks, the Garman-Klass estimator is still more effective than the basic formula since it takes into account not only the price at the beginning and end of the time interval but also intraday price extremes.
Researchers Rogers and Satchell have proposed a more efficient method for assessing historical volatility that takes into account price trends. See Rogers-Satchell Volatility for more detail.
Rogers-Satchell
Rogers-Satchell is an estimator for measuring the volatility of securities with an average return not equal to zero.
Unlike Parkinson and Garman-Klass estimators, Rogers-Satchell incorporates a drift term (mean return not equal to zero). As a result, it provides better volatility estimation when the underlying is trending.
The main disadvantage of this method is that it does not take into account price movements between trading sessions. This leads to an underestimation of volatility since price jumps periodically occur in the market precisely at the moments between sessions.
A more comprehensive estimator that also considers the gaps between sessions was developed based on the Rogers-Satchel formula in the 2000s by Yang-Zhang. See Yang Zhang Volatility for more detail.
Yang-Zhang
Yang Zhang is a historical volatility estimator that handles both opening jumps and the drift and has a minimum estimation error.
Yang-Zhang volatility can be thought of as a combination of the overnight (close-to-open volatility) and a weighted average of the Rogers-Satchell volatility and the day’s open-to-close volatility. It is considered to be 14 times more efficient than the close-to-close estimator.
Garman-Klass-Yang-Zhang
Garman-Klass-Yang-Zhang (GKYZ) volatility estimator incorporates the returns of open, high, low, and closing prices in its calculation.
GKYZ volatility estimator takes into account overnight jumps but not the trend, i.e., it assumes that the underlying asset follows a Geometric Brownian Motion (GBM) process with zero drift. Therefore, the GKYZ volatility estimator tends to overestimate the volatility when the drift is different from zero. However, for a GBM process, this estimator is eight times more efficient than the close-to-close volatility estimator.
Exponential Weighted Moving Average
The Exponentially Weighted Moving Average (EWMA) is a quantitative or statistical measure used to model or describe a time series. The EWMA is widely used in finance, with the main applications being technical analysis and volatility modeling.
The moving average is designed such that older observations are given lower weights. The weights decrease exponentially as the data point gets older – hence the name exponentially weighted.
The only decision a user of the EWMA must make is the parameter lambda. The parameter decides how important the current observation is in the calculation of the EWMA. The higher the value of lambda, the more closely the EWMA tracks the original time series.
Standard Deviation of Log Returns
This is the simplest calculation of volatility. It's the standard deviation of ln(close/close(1)).
Pseudo GARCH(2,2)
This is calculated using a short- and long-run mean of variance multiplied by ?.
?avg(var;M) + (1 ? ?) avg(var;N) = 2?var/(M+1-(M-1)L) + 2(1-?)var/(M+1-(M-1)L)
Solving for ? can be done by minimizing the mean squared error of estimation; that is, regressing L^-1var - avg(var; N) against avg(var; M) - avg(var; N) and using the resulting beta estimate as ?.
Average True Range
The average true range (ATR) is a technical analysis indicator, introduced by market technician J. Welles Wilder Jr. in his book New Concepts in Technical Trading Systems, that measures market volatility by decomposing the entire range of an asset price for that period.
The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The ATR is then a moving average, generally using 14 days, of the true ranges.
True Range Double
A special case of ATR that attempts to correct for volatility skew.
Standard Deviation
Standard deviation is a statistic that measures the dispersion of a dataset relative to its mean and is calculated as the square root of the variance. The standard deviation is calculated as the square root of variance by determining each data point's deviation relative to the mean. If the data points are further from the mean, there is a higher deviation within the data set; thus, the more spread out the data, the higher the standard deviation.
Adaptive Deviation
By definition, the Standard Deviation (STD, also represented by the Greek letter sigma ? or the Latin letter s) is a measure that is used to quantify the amount of variation or dispersion of a set of data values. In technical analysis, we usually use it to measure the level of current volatility.
Standard Deviation is based on Simple Moving Average calculation for mean value. This version of standard deviation uses the properties of EMA to calculate what can be called a new type of deviation, and since it is based on EMA, we can call it EMA deviation. Additionally, Perry Kaufman's efficiency ratio is used to make it adaptive (since all EMA type calculations are nearly perfect for adapting).
The difference when compared to the standard is significant--not just because of EMA usage, but the efficiency ratio makes it a "bit more logical" in very volatile market conditions.
Median Absolute Deviation
The median absolute deviation is a measure of statistical dispersion. Moreover, the MAD is a robust statistic, being more resilient to outliers in a data set than the standard deviation. In the standard deviation, the distances from the mean are squared, so large deviations are weighted more heavily, and thus outliers can heavily influence it. In the MAD, the deviations of a small number of outliers are irrelevant.
Because the MAD is a more robust estimator of scale than the sample variance or standard deviation, it works better with distributions without a mean or variance, such as the Cauchy distribution.
Efficiency-Ratio Adaptive ATR
Average True Range (ATR) is a widely used indicator for many occasions in technical analysis. It is calculated as the RMA of the true range. This version adds a "twist": it uses Perry Kaufman's Efficiency Ratio to calculate adaptive true range.
Mean Absolute Deviation
The mean absolute deviation (MAD) is a measure of variability that indicates the average distance between observations and their mean. MAD uses the original units of the data, which simplifies interpretation. Larger values signify that the data points spread out further from the average. Conversely, lower values correspond to data points bunching closer to it. The mean absolute deviation is also known as the mean deviation and average absolute deviation.
This definition of the mean absolute deviation sounds similar to the standard deviation (SD). While both measure variability, they have different calculations. In recent years, some proponents of MAD have suggested that it replace the SD as the primary measure because it is a simpler concept that better fits real life.
Static Percent
Static Percent allows the user to insert their own constant percent that will then be used to create take profits and stoploss
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v2.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data to A backtest module wherein the various components of the GKD system are combined to create a trading signal.
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Confiramtion Stack Backtest
Baseline: Hull Moving Average
Volatility/Volume: Hurst Exponent
Confirmation 1: Fisher Transform as shown on the chart above
Confirmation 2: uf2018 as shown on the chart above
Continuation: Vortex
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD system.
GKD-BT Giga Stacks Backtest [Loxx]Giga Kaleidoscope GKD-BT Giga Stacks Backtest is a Backtesting module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-BT Giga Stacks Backtest
The Giga Stacks Backtest module allows users to perform backtesting on Long and Short signals from the confluence of GKD-B Baseline, GKD-C Confirmation, and GKD-V Volatility/Volume indicators. This module encompasses two types of backtests: Trading and Full. The Trading backtest permits users to evaluate individual trades, whether Long or Short, one at a time. Conversely, the Full backtest allows users to analyze either Longs or Shorts separately by toggling between them in the settings, enabling the examination of results for each signal type. The Trading backtest emulates actual trading conditions, while the Full backtest assesses all signals, regardless of being Long or Short.
Additionally, this backtest module provides the option to test using indicators with 1 to 3 take profits and 1 stop loss. The Trading backtest allows for the use of 1 to 3 take profits, while the Full backtest is limited to 1 take profit. The Trading backtest also offers the capability to apply a trailing take profit.
In terms of the percentage of trade removed at each take profit, this backtest module has the following hardcoded values:
Take profit 1: 50% of the trade is removed.
Take profit 2: 25% of the trade is removed.
Take profit 3: 25% of the trade is removed.
Stop loss: 100% of the trade is removed.
After each take profit is achieved, the stop loss level is adjusted. When take profit 1 is reached, the stop loss is moved to the entry point. Similarly, when take profit 2 is reached, the stop loss is shifted to take profit 1. The trailing take profit feature comes into play after take profit 2 or take profit 3, depending on the number of take profits selected in the settings. The trailing take profit is always activated on the final take profit when 2 or more take profits are chosen.
The backtest module also offers the capability to restrict by a specific date range, allowing for simulated forward testing based on past data. Additionally, users have the option to display or hide a trading panel that provides relevant information about the backtest, statistics, and the current trade. It is also possible to activate alerts and toggle sections of the trading panel on or off. On the chart, historical take profit and stop loss levels are represented by horizontal lines overlaid for reference.
To utilize this strategy, follow these steps (where "Stack XX" denotes the number of the Stack):
GKD-B Baseline Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-B Baseline module into the GKD-BT Giga Stacks Backtest module setting named "Stack XX: Import GKD-C, GKD-B, or GKD-V."
GKD-V Volatility/Volume Import: Import the value "Input into NEW GKD-BT Backtest" from the GKD-V Volatility/Volume module into the GKD-BT Giga Stacks Backtest module setting named "Stack XX: Import GKD-C, GKD-B, or GKD-V."
GKD-C Confirmation Import: 1) Adjust the "Confirmation Type" in the GKD-C Confirmation Indicator to "GKD New."; 2) Import the value "Input into NEW GKD-BT Backtest" from the GKD-C Confirmation module into the GKD-BT Giga Stacks Backtest module setting named "Stack XX: Import GKD-C, GKD-B, or GKD."
█ Giga Stacks Backtest Entries
Entries are generated form the confluence of up to six GKD-B Baseline, GKD-C Confirmation, and GKD-V Volatility/Volume indicators. Signals are generated when all Stacks reach uptrend or downtrend together.
Here's how this works. Assume we have the following Stacks and their respective trend on the current candle:
Stack 1 indicator is in uptreend
Stack 2 indicator is in downtrend
Stack 3 indicator is in uptreend
Stack 4 indicator is in uptreend
All stacks are in uptrend except for Stack 2. If Stack 2 reaches uptrend while Stacks 1, 3, and 4 stay in uptrend, then a long signal is generated. The last Stack to align with all other Stacks will generate a long or short signal.
█ Volatility Types Included
The GKD system utilizes volatility-based take profits and stop losses. Each take profit and stop loss is calculated as a multiple of volatility. Users can also adjust the multiplier values in the settings.
This module includes 17 types of volatility:
Close-to-Close
Parkinson
Garman-Klass
Rogers-Satchell
Yang-Zhang
Garman-Klass-Yang-Zhang
Exponential Weighted Moving Average
Standard Deviation of Log Returns
Pseudo GARCH(2,2)
Average True Range
True Range Double
Standard Deviation
Adaptive Deviation
Median Absolute Deviation
Efficiency-Ratio Adaptive ATR
Mean Absolute Deviation
Static Percent
Close-to-Close
Close-to-Close volatility is a classic and widely used volatility measure, sometimes referred to as historical volatility.
Volatility is an indicator of the speed of a stock price change. A stock with high volatility is one where the price changes rapidly and with a larger amplitude. The more volatile a stock is, the riskier it is.
Close-to-close historical volatility is calculated using only a stock's closing prices. It is the simplest volatility estimator. However, in many cases, it is not precise enough. Stock prices could jump significantly during a trading session and return to the opening value at the end. That means that a considerable amount of price information is not taken into account by close-to-close volatility.
Despite its drawbacks, Close-to-Close volatility is still useful in cases where the instrument doesn't have intraday prices. For example, mutual funds calculate their net asset values daily or weekly, and thus their prices are not suitable for more sophisticated volatility estimators.
Parkinson
Parkinson volatility is a volatility measure that uses the stock’s high and low price of the day.
The main difference between regular volatility and Parkinson volatility is that the latter uses high and low prices for a day, rather than only the closing price. This is useful as close-to-close prices could show little difference while large price movements could have occurred during the day. Thus, Parkinson's volatility is considered more precise and requires less data for calculation than close-to-close volatility.
One drawback of this estimator is that it doesn't take into account price movements after the market closes. Hence, it systematically undervalues volatility. This drawback is addressed in the Garman-Klass volatility estimator.
Garman-Klass
Garman-Klass is a volatility estimator that incorporates open, low, high, and close prices of a security.
Garman-Klass volatility extends Parkinson's volatility by taking into account the opening and closing prices. As markets are most active during the opening and closing of a trading session, it makes volatility estimation more accurate.
Garman and Klass also assumed that the process of price change follows a continuous diffusion process (Geometric Brownian motion). However, this assumption has several drawbacks. The method is not robust for opening jumps in price and trend movements.
Despite its drawbacks, the Garman-Klass estimator is still more effective than the basic formula since it takes into account not only the price at the beginning and end of the time interval but also intraday price extremes.
Researchers Rogers and Satchell have proposed a more efficient method for assessing historical volatility that takes into account price trends. See Rogers-Satchell Volatility for more detail.
Rogers-Satchell
Rogers-Satchell is an estimator for measuring the volatility of securities with an average return not equal to zero.
Unlike Parkinson and Garman-Klass estimators, Rogers-Satchell incorporates a drift term (mean return not equal to zero). As a result, it provides better volatility estimation when the underlying is trending.
The main disadvantage of this method is that it does not take into account price movements between trading sessions. This leads to an underestimation of volatility since price jumps periodically occur in the market precisely at the moments between sessions.
A more comprehensive estimator that also considers the gaps between sessions was developed based on the Rogers-Satchel formula in the 2000s by Yang-Zhang. See Yang Zhang Volatility for more detail.
Yang-Zhang
Yang Zhang is a historical volatility estimator that handles both opening jumps and the drift and has a minimum estimation error.
Yang-Zhang volatility can be thought of as a combination of the overnight (close-to-open volatility) and a weighted average of the Rogers-Satchell volatility and the day’s open-to-close volatility. It is considered to be 14 times more efficient than the close-to-close estimator.
Garman-Klass-Yang-Zhang
Garman-Klass-Yang-Zhang (GKYZ) volatility estimator incorporates the returns of open, high, low, and closing prices in its calculation.
GKYZ volatility estimator takes into account overnight jumps but not the trend, i.e., it assumes that the underlying asset follows a Geometric Brownian Motion (GBM) process with zero drift. Therefore, the GKYZ volatility estimator tends to overestimate the volatility when the drift is different from zero. However, for a GBM process, this estimator is eight times more efficient than the close-to-close volatility estimator.
Exponential Weighted Moving Average
The Exponentially Weighted Moving Average (EWMA) is a quantitative or statistical measure used to model or describe a time series. The EWMA is widely used in finance, with the main applications being technical analysis and volatility modeling.
The moving average is designed such that older observations are given lower weights. The weights decrease exponentially as the data point gets older – hence the name exponentially weighted.
The only decision a user of the EWMA must make is the parameter lambda. The parameter decides how important the current observation is in the calculation of the EWMA. The higher the value of lambda, the more closely the EWMA tracks the original time series.
Standard Deviation of Log Returns
This is the simplest calculation of volatility. It's the standard deviation of ln(close/close(1)).
Pseudo GARCH(2,2)
This is calculated using a short- and long-run mean of variance multiplied by ?.
?avg(var;M) + (1 ? ?) avg(var;N) = 2?var/(M+1-(M-1)L) + 2(1-?)var/(M+1-(M-1)L)
Solving for ? can be done by minimizing the mean squared error of estimation; that is, regressing L^-1var - avg(var; N) against avg(var; M) - avg(var; N) and using the resulting beta estimate as ?.
Average True Range
The average true range (ATR) is a technical analysis indicator, introduced by market technician J. Welles Wilder Jr. in his book New Concepts in Technical Trading Systems, that measures market volatility by decomposing the entire range of an asset price for that period.
The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The ATR is then a moving average, generally using 14 days, of the true ranges.
True Range Double
A special case of ATR that attempts to correct for volatility skew.
Standard Deviation
Standard deviation is a statistic that measures the dispersion of a dataset relative to its mean and is calculated as the square root of the variance. The standard deviation is calculated as the square root of variance by determining each data point's deviation relative to the mean. If the data points are further from the mean, there is a higher deviation within the data set; thus, the more spread out the data, the higher the standard deviation.
Adaptive Deviation
By definition, the Standard Deviation (STD, also represented by the Greek letter sigma ? or the Latin letter s) is a measure that is used to quantify the amount of variation or dispersion of a set of data values. In technical analysis, we usually use it to measure the level of current volatility.
Standard Deviation is based on Simple Moving Average calculation for mean value. This version of standard deviation uses the properties of EMA to calculate what can be called a new type of deviation, and since it is based on EMA, we can call it EMA deviation. Additionally, Perry Kaufman's efficiency ratio is used to make it adaptive (since all EMA type calculations are nearly perfect for adapting).
The difference when compared to the standard is significant--not just because of EMA usage, but the efficiency ratio makes it a "bit more logical" in very volatile market conditions.
Median Absolute Deviation
The median absolute deviation is a measure of statistical dispersion. Moreover, the MAD is a robust statistic, being more resilient to outliers in a data set than the standard deviation. In the standard deviation, the distances from the mean are squared, so large deviations are weighted more heavily, and thus outliers can heavily influence it. In the MAD, the deviations of a small number of outliers are irrelevant.
Because the MAD is a more robust estimator of scale than the sample variance or standard deviation, it works better with distributions without a mean or variance, such as the Cauchy distribution.
Efficiency-Ratio Adaptive ATR
Average True Range (ATR) is a widely used indicator for many occasions in technical analysis. It is calculated as the RMA of the true range. This version adds a "twist": it uses Perry Kaufman's Efficiency Ratio to calculate adaptive true range.
Mean Absolute Deviation
The mean absolute deviation (MAD) is a measure of variability that indicates the average distance between observations and their mean. MAD uses the original units of the data, which simplifies interpretation. Larger values signify that the data points spread out further from the average. Conversely, lower values correspond to data points bunching closer to it. The mean absolute deviation is also known as the mean deviation and average absolute deviation.
This definition of the mean absolute deviation sounds similar to the standard deviation (SD). While both measure variability, they have different calculations. In recent years, some proponents of MAD have suggested that it replace the SD as the primary measure because it is a simpler concept that better fits real life.
Static Percent
Static Percent allows the user to insert their own constant percent that will then be used to create take profits and stoploss
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v2.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data to A backtest module wherein the various components of the GKD system are combined to create a trading signal.
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Stacks Backtest
Baseline: Hull Moving Average
Volatility/Volume: Hurst Exponent
Confirmation 1: Vorext
Confirmation 2: Coppock Curve
Continuation: Fisher Transform
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD system.